{"id":22419163,"url":"https://github.com/tidalmigrations/ansible-tower-integration","last_synced_at":"2026-05-18T17:05:23.111Z","repository":{"id":48634006,"uuid":"78211539","full_name":"tidalmigrations/ansible-tower-integration","owner":"tidalmigrations","description":"An integration for Ansible Tower with Tidal Migrations.","archived":false,"fork":false,"pushed_at":"2022-12-08T01:32:12.000Z","size":26,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-27T04:32:12.402Z","etag":null,"topics":["ansible","ansible-tower","devops","devops-tools","tidal-migrations"],"latest_commit_sha":null,"homepage":"https://tidalmigrations.com/integrations","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tidalmigrations.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-06T14:19:36.000Z","updated_at":"2021-07-16T17:42:28.000Z","dependencies_parsed_at":"2023-01-25T06:45:50.575Z","dependency_job_id":null,"html_url":"https://github.com/tidalmigrations/ansible-tower-integration","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tidalmigrations/ansible-tower-integration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tidalmigrations%2Fansible-tower-integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tidalmigrations%2Fansible-tower-integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tidalmigrations%2Fansible-tower-integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tidalmigrations%2Fansible-tower-integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tidalmigrations","download_url":"https://codeload.github.com/tidalmigrations/ansible-tower-integration/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tidalmigrations%2Fansible-tower-integration/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264888016,"owners_count":23678790,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","ansible-tower","devops","devops-tools","tidal-migrations"],"created_at":"2024-12-05T16:14:25.161Z","updated_at":"2026-05-18T17:05:18.087Z","avatar_url":"https://github.com/tidalmigrations.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tidal Migrations integration with Ansible Tower\n\nThis script will allow your Ansible Tower instance to use servers that are stored in your Tidal Migrations application to run jobs against.\n\nIf you are setting this up with Ansible Tower you should follow the tutorial posted [here](https://guides.tidalmg.com/ansible-tower.html).\n\nIf you would like to learn more about how this script works directly you should continue reading below.\n\n\n## Configure Environment Variables\n\nYou must provide login credentials for the Tidal Migrations API via environment variables.\n\n- `TIDAL_DOMAIN`\n- `TIDAL_EMAIL`\n- `TIDAL_PASSWORD`\n\nFor example you could run the these three commands on the host running Ansible Tower to set these:\n\n```\nexport TIDAL_DOMAIN=demo.tidalmg.com\nexport TIDAL_EMAIL=admin@tidalmigrations.com\nexport TIDAL_PASSWORD=yoursecurepasswordhere!\n```\n\nIf you need to configure a proxy you can set the environment variables:\n\n- `HTTP_PROXY`\n- `HTTPS_PROXY`\n\nThis is needed if the script is running on a system that requires a proxy to reach your Tidal Migrations API.\n\n## Configuration\n\nA configuration file can optionally be provided to customize the results returned by the script. If no config file is provided the script will use the default values specified below.\n\nIn order to use the configuration file you must provide it's location via an environment variable. An example would be:\n\n`export CONFIG_PATH=/root/tidal.yml`\n\nAn exmaple configuration file would look like this:\n\n```\nproperty: \"fqdn\"\n\ngroups:\n  non-test:\n    logic: None\n    tags:\n      - TEST\n  production:\n    logic: All\n    tags:\n      - PROD\n      - Production\n\nfilter-tags:\n  logic: Any\n  tags:\n    - TEST\n```\n\n### property\nThe `property` key is used to specify the property that will be used as the hostname for the servers.\n\nNote that this property must be unique across all servers.\n\nThis parameter is optional, if it is not set the default value of `fqdn` will be used.\n\n### groups\nThe `groups` key can be used to specify sets of tags to define one or more groups of servers.\n\nThis key has higher precedence than `filter-tags`; if the groups key is present it will use these paraemters over the filter-tags.\n\nEach key for groups is any arbitrary name that will define the group in Ansible Tower. Each group accepts two keys.\n - The `tags` key is a list of strings that specify the names of the tags used to define the group.\n - The `logic` key accepts 3 values, `Any`, `All` and `None`.\n   - `Any` specifies that any applications with one of the listed tags will be part of the group.\n   - `All` specifies that any applications with all of the listed tags will be part of the group.\n   - `None` species that any applications with none of the tags specified will be part of the group.\n   - By default, if no `logic` key is specified, `All` is used.\n\nThis parameter is optional, if there is no key then the results will not be grouped.\n\n### filter-tags\n\nThe `filter-tags` key can be used to filter all servers based on a set of tags.\n\nThis key has lower precedence than `groups`; if the groups key is specified these parameters will be ignored.\n\nThe accepted keys and structure for this tag is identical to the `groups`, just specify a `logic` and `tags` key directly.\n\nThis parameter is optional, if there is no key then all servers will be returned.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftidalmigrations%2Fansible-tower-integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftidalmigrations%2Fansible-tower-integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftidalmigrations%2Fansible-tower-integration/lists"}