awx-migrate is a command line tool for Ansible AWX. It leverages the tower-cli command, makes a full backup of an AWX instance, and adds the secrets to the exported credentials, which tower-cli leaves empty.
It then dumps the whole export including credential secrets in json to stdout, which you can redirect to a file. It also takes all config settings from the database - including LDAP settings and adds or updates them in a new instance.
This tool allows you to fully migrate an AWX setup, and is a workaround for not being able to upgrade AWX. (See https://github.com/ansible/awx/blob/devel/DATA_MIGRATION.md)
For more information, on tower-cli look at http://tower-cli.readthedocs.io.
AWX - separately configure how to connect to both the old and the new instance
and this for both the source and destination AWX instance and its postgresql database
awx-migrate-wrapper
and set the right AWX_SRC_*
and AWX_DST_*
environment variables as needed, the former being for the source instance,
the latter for the destination instancetower-cli config
to connect to the source awx instance you want
to migrate fromawx-migrate-wrapper
and it will redirect stdout to awx-data.json
,
then split each asset_type in different files so you can restore them
seperately and in the best possible way.tower-cli config
to connect to the destination awx instance you want
to migrate totower-cli send awx-data.json
This script was written for and tested in a specific setup and particular environment, lot's of issues or bugs can still arise