Business workflow (trunk-based)
- Cloud Runners
- Self-Hosted Runners
- Hybrid Runners
1. In your main branch, create a YAML file named .github/workflows/github-ci.yaml with the following content:
###################################################################################################
############################# ShamanOps pipeline | GitHub Actions #################################
###################################################################################################
name: ShamanOps
on:
workflow_dispatch:
push:
branches: [ "main" ]
jobs:
shamanops:
uses: shamanops/resources/.github/workflows/base-stable.yaml@main
with:
# Environments:
# full-with-drp (dev/stg/prod/drp) | full (dev/stg/prod) | mid (stg/prod) | minimal (prod)
environments: 'full'
# Project
projectName: 'examples'
#-------------------------------------------------------------------------------------------------#
## Features -------------------------------------------------------------------------------------#
# Approvals
shamanopsBusinessApprovers: 'business-user@customer.com'
shamanopsTechnicalApprovers: 'technical-user@customer.com'
shamanopsBusinessApproversMinimalProd: '1'
shamanopsTechnicalApproversMinimalProd: '1'
#-------------------------------------------------------------------------------------------------#
secrets:
shamanops_customer_token: ${{ secrets.shamanops_customer_token }}
shamanops_argocd_dev_token: ${{ secrets.shamanops_argocd_dev_token }}
shamanops_argocd_stg_token: ${{ secrets.shamanops_argocd_stg_token }}
shamanops_argocd_prod_token: ${{ secrets.shamanops_argocd_prod_token }}
shamanops_argocd_drp_token: ${{ secrets.shamanops_argocd_drp_token }}
shamanops_manifest_repository_token: ${{ secrets.shamanops_manifest_repository_token }}
shamanops_chat_webhook: ${{ secrets.shamanops_chat_webhook }}
shamanops_registry_password: ${{ secrets.shamanops_registry_password }}
shamanops_dockerfile_token: ${{ secrets.shamanops_dockerfile_token }}
##################################################################################################
##################################################################################################
Remember to replace the approvers emails business-user@customer.com and technical-user@customer.com with own addresses.
This pipeline contains the minimum configuration to be used, to customize the pipeline please check the Customizations section.
2. Commit and Enjoy! ✨
1. In your main branch, create a YAML file named .github/workflows/github-ci.yaml with the following content:
###################################################################################################
############################# ShamanOps pipeline | GitHub Actions #################################
###################################################################################################
name: ShamanOps
on:
workflow_dispatch:
push:
branches: [ "main" ]
jobs:
shamanops:
uses: shamanops/resources/.github/workflows/base-stable.yaml@main
with:
# Runner type
runs_on: 'self-hosted'
runs_on_build: 'self-hosted'
# Environments:
# full-with-drp (dev/stg/prod/drp) | full (dev/stg/prod) | mid (stg/prod) | minimal (prod)
environments: 'full'
# Project
projectName: 'examples'
#-------------------------------------------------------------------------------------------------#
## Features -------------------------------------------------------------------------------------#
# Approvals
shamanopsBusinessApprovers: 'business-user@customer.com'
shamanopsTechnicalApprovers: 'technical-user@customer.com'
shamanopsBusinessApproversMinimalProd: '1'
shamanopsTechnicalApproversMinimalProd: '1'
#-------------------------------------------------------------------------------------------------#
secrets:
shamanops_customer_token: ${{ secrets.shamanops_customer_token }}
shamanops_argocd_dev_token: ${{ secrets.shamanops_argocd_dev_token }}
shamanops_argocd_stg_token: ${{ secrets.shamanops_argocd_stg_token }}
shamanops_argocd_prod_token: ${{ secrets.shamanops_argocd_prod_token }}
shamanops_argocd_drp_token: ${{ secrets.shamanops_argocd_drp_token }}
shamanops_manifest_repository_token: ${{ secrets.shamanops_manifest_repository_token }}
shamanops_chat_webhook: ${{ secrets.shamanops_chat_webhook }}
shamanops_registry_password: ${{ secrets.shamanops_registry_password }}
shamanops_dockerfile_token: ${{ secrets.shamanops_dockerfile_token }}
##################################################################################################
##################################################################################################
Remember to replace the approvers emails business-user@customer.com and technical-user@customer.com with own addresses.
This pipeline contains the minimum configuration to be used, to customize the pipeline please check the Customizations section.
2. Commit and Enjoy! ✨
This pipeline executes the jobs that are related to the image compilation in the cloud runners.
It is important that the registry can be resolved through the Internet.
1. In your main branch, create a YAML file named .github/workflows/github-ci.yaml with the following content:
###################################################################################################
############################# ShamanOps pipeline | GitHub Actions #################################
###################################################################################################
name: ShamanOps
on:
workflow_dispatch:
push:
branches: [ "main" ]
jobs:
shamanops:
uses: shamanops/resources/.github/workflows/base-stable.yaml@main
with:
# Runner type
runs_on: 'self-hosted'
runs_on_build: 'ubuntu-latest'
# Environments:
# full-with-drp (dev/stg/prod/drp) | full (dev/stg/prod) | mid (stg/prod) | minimal (prod)
environments: 'full'
# Project
projectName: 'examples'
#-------------------------------------------------------------------------------------------------#
## Features -------------------------------------------------------------------------------------#
# Approvals
shamanopsBusinessApprovers: 'business-user@customer.com'
shamanopsTechnicalApprovers: 'technical-user@customer.com'
shamanopsBusinessApproversMinimalProd: '1'
shamanopsTechnicalApproversMinimalProd: '1'
#-------------------------------------------------------------------------------------------------#
secrets:
shamanops_customer_token: ${{ secrets.shamanops_customer_token }}
shamanops_argocd_dev_token: ${{ secrets.shamanops_argocd_dev_token }}
shamanops_argocd_stg_token: ${{ secrets.shamanops_argocd_stg_token }}
shamanops_argocd_prod_token: ${{ secrets.shamanops_argocd_prod_token }}
shamanops_argocd_drp_token: ${{ secrets.shamanops_argocd_drp_token }}
shamanops_manifest_repository_token: ${{ secrets.shamanops_manifest_repository_token }}
shamanops_chat_webhook: ${{ secrets.shamanops_chat_webhook }}
shamanops_registry_password: ${{ secrets.shamanops_registry_password }}
shamanops_dockerfile_token: ${{ secrets.shamanops_dockerfile_token }}
##################################################################################################
##################################################################################################
Remember to replace the approvers emails business-user@customer.com and technical-user@customer.com with own addresses.
This pipeline contains the minimum configuration to be used, to customize the pipeline please check the Customizations section.
2. Commit and Enjoy! ✨