Giter Site home page Giter Site logo

shalomb / tofu Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 3.0 77 KB

A terraform-on-openstack dynamic inventory for ansible.

License: Apache License 2.0

Python 100.00%
ansible ansible-inventory terraform wrapper-script ansible-openstack openstack-ansible terraform-openstack terraform-ansible-openstack dynamic-inventory terraform-state

tofu's Introduction

Shalom ๐Ÿ‘‹

  • ๐Ÿ”ญ Iโ€™m currently working on my fatherhood skills, rum, terraform providers for $work
  • ๐Ÿ‘จ At $dayjob I do {cloud,devops,platform} Engineering on the Takeda Enterprise Cloud
  • โšก I'm a big proponent of DevOps - both the practices and principles. You can't remain effective in any domain/vertical without DevOps nowadays - prove me wrong!
  • ๐ŸŒฑ I dabble in Distributed Systems, Linux, Cloud Native Tech, Golang, Python, Rust
  • ๐Ÿ‘ฏ Iโ€™d like to work on something nebulous yet lofty (โ˜๏ธ "cloud-native". get it?) with a nautical (โ˜ธ) twist .. heh.
  • ๐Ÿค” Iโ€™m looking for help tackling this Strava segment ๐Ÿšด
  • ๐Ÿ“ซ How to reach me: shalomb.id/#contact

What I do

PaaS terraform aws python ansible kubernetes docker podman git github_action github gitlab openstack gcp prometheus grafana linux debian cloudflare nginx envoy bash go go flask powershell postgresql mariadb


Linkedin Badge Gitlab Badge Stack Exchange PyPi Badge

tofu's People

Contributors

beli-sk avatar shalomb avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

tofu's Issues

Usage of modules not supported

tofu will only report resources in the root of the terraform state tree.

The problem is in L111: this assumes there is no terraform module being used except for the main, root definition.

Instead of hardcoded value of 0, self.data.modules should iterated because the length can be n.

An example from a more complex terraform infra using modules:

>>> len(data['modules'])
8
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][0]['resources'].keys() )
[]
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][1]['resources'].keys() )
[]
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][2]['resources'].keys() )
[]
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][3]['resources'].keys() )
[]
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][4]['resources'].keys() )
[]
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][5]['resources'].keys() )
[u'openstack_compute_instance_v2.vm_2n.0', u'openstack_compute_instance_v2.vm_2n.1', u'openstack_compute_instance_v2.vm_2n.2']
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][6]['resources'].keys() )
[u'openstack_compute_instance_v2.vm_2n.0', u'openstack_compute_instance_v2.vm_2n.1', u'openstack_compute_instance_v2.vm_2n.2']
>>> filter( lambda x : re.search('openstack_compute_instance_v2', x), data['modules'][7]['resources'].keys() )
[u'openstack_compute_instance_v2.instance']

This is because in this tf infra there is no vm being built in the root, but only using modules.

Project `tofu` on test.pypi.org

Hi! I'm one of the moderators of PyPI. In pypi/support#147 a different user is asking to be able to use the tofu name or test.pypi.org like they can on pypi.org. It looks like you may have earlier published a package under that name. Could you please respond to that issue?

Thank you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.