Scripts to automate lift-and-shift with CloudEndure and the AWS Migration Factory
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Guillaume Donval 88bb2ca50a
doc: updates CHANGELOG
1 week ago
config feat: adds SMTP notifier implementation 1 month ago
post-launch removed the AWSPowerShell PSModule which caused a freeze on the post migration script 1 week ago
scripts test: debug 6 days ago
tools fix: missing import for tools 1 month ago
.gitignore chore: Add pre-commit config and run it 1 month ago
.pre-commit-config.yaml doc: Add contribution/tolling infromation in README 1 month ago
CHANGELOG.md doc: updates CHANGELOG 6 days ago
Jenkinsfile chore: Add Jenkinsfile pipeline 1 month ago
LICENSE fix: various fixes 2 months ago
README.md refactor: use MF library for endpoints read 1 month ago
install.sh Revert "tech: install debug mode" 1 month ago
requirements.txt feat: adds notification library with Teams implementation 1 month ago

README.md

python-migration-factory-scripts

Linux and Windows compliant scripts for the AWS Migration Factory.

These scripts replace and add many features above the scripts given by AWS for the migration execution server.

Pre-requisites

  1. Install python3, gssntlmssp, pwsh 7 with your OS package manager.

Installation

You need to have git and curl install on the machine.

  1. Clone this repository;
  2. Move to into it;
  3. Run # install.sh (careful, needs root permissions). You can use --cron to force scripts installation regularly, making sure VCS and server have the same code;
  4. Modify the file /etc/migration_factory/endpoints.yml to add URL API;
  5. Modify the file /etc/migration_factory/defaults.yml to give the defaults values by environments;
  6. optional - Add an alias on your shell profile to run the script mf_setup_environment properly. alias mf_setup_environment="source /usr/local/bin/mf_setup_environment"
  7. Enjoy !

Defaults

A file containing default values will be installed. See installation. When environment in passed as an argument of any script, it will check dynamically that a key corresponding to the given environment exists in the defaults file.

Environment variable

Here are all supported environment variable:

  • MF_USERNAME: The username used to log on the migration factory
  • MF_PASSWORD: The password used to log on the migration factory
  • MF_CE_API_TOKEN: The Cloud Endure API token
  • MF_AWS_ACCESS_KEY_ID: The AWS access key id of the target account
  • MF_AWS_SECRET_ACCESS_KEY: The AWS secret access key of the target account
  • MF_AWS_REGION: The AWS region of the target account
  • MF_ENDPOINT_CONFIG_FILE: The location of endpoint config file
  • MF_WINDOWS_USERNAME: The Windows username to connect to source host
  • MF_WINDOWS_PASSWORD: The Windows password to connect to source host

You can also use the command source mf_setup_environment to set all these environment variables

Technical documentation

See this repository wiki.

Versioning

This repository follows Semantic Versioning 2.0.0

Git Hooks

This repository uses pre-commit hooks.

Usage

pre-commit install
pre-commit install -t commit-msg

Commit Messages

This repository follows the afcmf standard for it's commit messages.

NOTE

  • This works only on Linux
  • 0-AddProxy-Windows.py is not working for now.