Alternatives for version control of source code in AFT
AFT natively uses AWS CodeCommit for a source code version control system (VCS), but it allows other AWS CodeStar Connections that meet your business requirements or existing architecture. You can specify a third-party VCS as part of the AFT deployment prerequisites.
AFT supports the following source code control alternatives:
-
GitHub
-
GitHub Enterprise Server
-
BitBucket
If you select AWS CodeCommit as your VCS, no additional steps are required. By default, AFT
creates the necessary git
repositories in your environment, with default names.
However, you can override the default repository names for CodeCommit, as needed, to comply with
your organizational standards.
Set up an alternative source code version control system (custom VCS) with AFT
To set up an alternative source code version control system for your AFT deployment, follow these steps.
Step 1: Create git
repositories in a supported
third-party version control system (VCS).
If you are not using AWS CodeCommit, you must create git
repositories in your
AFT-supported, third-party VCS provider environment for the following items.
-
AFT account requests. Sample code available
. For more information about AFT account requests, see Provision a new account with AFT. -
AFT account provisioning customizations. Sample code available
. For more information on AFT account provisioning customizations, see Create your AFT account provisioning customizations state machine. -
AFT global customizations. Sample code available
. For more information on AFT global customizations, see Account customizations. -
AFT account customizations. Sample code available
. For more information on AFT account customizations, see Account customizations.
Step 2: Specify the VCS configuration parameters required for AFT deployment
The following input parameters are needed to configure your VCS provider as part of the AFT deployment.
-
vcs_provider: If you are not using AWS CodeCommit, specify the VCS provider as
"bitbucket"
,"github"
, or"githubenterprise"
, based on your use case. -
github_enterprise_url: For GitHub Enterprise customers only, specify the GitHub URL.
-
account_request_repo_name: By default, this value is set to
aft-account-request
for AWS CodeCommit users. If you created your repository with a new name in CodeCommit or in an AFT-supported, third-party VCS provider environment, update this input value with your actual repository name. For BitBucket, Github, and GitHub Enterprise, the repository name must have the format[Org]/[Repo]
. -
account_customizations_repo_name: By default, this value is set to
aft-account-customizations
for AWS CodeCommit users. If you created repository with a new name in CodeCommit or in an AFT-supported, third-party VCS provider environment, update this input value with your repository name. For BitBucket, Github, and GitHub Enterprise, the repository name must have the format[Org]/[Repo]
. -
account_provisioning_customizations_repo_name: By default, this value is set to
aft-account-provisioning-customizations
for AWS CodeCommit users. If you created repository with a new name in AWS CodeCommit or in an AFT- supported, third-party VCS provider environment, update this input value with your repository name. For BitBucket, Github, and GitHub Enterprise, the repository name must have the format[Org]/[Repo]
. -
global_customizations_repo_name: By default, this value is set to
aft-global-customizations
for AWS CodeCommit users. If you created repository with a new name in CodeCommit or in an AFT-supported, third-party VCS provider environment, update this input value with your repository name. For BitBucket, Github, and GitHub Enterprise, the repository name must have the format[Org]/[Repo]
. -
account_request_repo_branch: The branch is
main
by default, but the value can be overridden.
By default, AFT sources from the main
branch of each git
repository. You can override the branch name value with an additional input parameter.
For more information about input parameters, refer to the README file in the AFT Terraform module
Step 3: Complete the AWS CodeStar connection for third-party VCS providers
When your deployment runs, AFT either creates the required AWS CodeCommit repositories, or it creates an AWS CodeStar connection for your chosen third-party VCS provider. In case of the latter, you must manually sign in to the AFT management account’s console to complete the pending AWS CodeStar connection. See the AWS CodeStar documentation for further instructions on completing the AWS CodeStar connection.