AWS OpsWorks
User Guide (API Version 2013-02-18)

Optional: Use AWS CodeCommit as a Puppet r10k Remote Control Repository

You can create a new repository by using AWS CodeCommit, and use it as your r10k remote control repository.

  1. In the AWS CodeCommit console, create a new repository.

                  Creating new repository in AWS CodeCommit.
  2. Choose Skip to skip setting up an Amazon SNS topic.

  3. On the Code page, choose Connect to your repository.

  4. On the Connect to your repository page, choose HTTPS as the Connection type, and choose your operating system.

                  Creating a new repository in AWS CodeCommit.

    In the Steps to clone your repository area, your git clone URL should resemble the following: Copy this URL to a convenient place for use in Puppet server setup.

  5. Close the Connect to your repository page, and return to the OpsWorks for Puppet Enterprise server setup.

  6. Paste the URL that you copied in Step 4 in the r10k remote string box in the Configure credentials page of the Puppet master setup wizard. Leave the r10k private key box empty. Finish creating and launching your Puppet master.

  7. In the IAM console, attach the AWSCodeCommitReadOnly policy to the instance profile role of your Puppet master. For more information about how to attach a policy to an IAM role, see Attaching Managed Policies in the IAM User Guide.

  8. Follow the steps in Setup for HTTPS Users Using Git Credentials in the AWS CodeCommit User Guide to push your existing control-repo content to the new AWS CodeCommit repository.

  9. Now, you can continue by following the instructions in Configure the Puppet Master Using the Starter Kit, and use the Starter Kit to deploy code to your Puppet master. The following command is an example.

    puppet-code deploy --all --wait --config-file .config/puppet-code.conf