Amazon

Setup Jenkins X on EKS on AWS

NOTE

  • Ensure you are logged into GitHub else you will get a 404 error when clicking the links below
  • The quickstart guides are for users who want to get up and running quickly with Jenkins X. Refer to the eks-jx terraform module readme for all the variables that can be customized.
    • Refer to this page for setting up Jenkins X v3 with external/existing vault.
    • For installing Jenkins X in an existing EKS cluster, refer to this section.
    • To use AWS secrets manager instead of vault, refer to this section
  • Always use the latest module version for the eks-jx module. The list of versions can be found here.
  • Do not specify the last digit of the kubernetes version, so if you want to provision an EKS cluster with kubernetes 1.21.5, just specify 1.21. See this issue for more details.

EKS + Terraform + Vault/ASM + Github

This is our current recommended quickstart for EKS:

Note: remember to create the Git repositories below in your Git Organization rather than your personal Git account else this will lead to issues with ChatOps and automated registering of webhooks.

      git commit -a -m "fix: configure cluster repository and project"
      git push
  • Define an environment variable to pass the bot token into Terraform:
      export TF_VAR_jx_bot_token=my-bot-token
  • Now, initialise, plan and apply Terraform:
      terraform init
      terraform plan
      terraform apply
  • Tail the Jenkins X installation logs
  $(terraform output follow_install_logs)
  • Once finished you can now move into the Jenkins X Developer namespace
  jx ns jx

For more details on how to install Jenkins X on AWS EKS see Github repository for Jenkins X Terraform module for EKS