add deployment workflows; publish an image
This commit is contained in:
		| @@ -2,10 +2,10 @@ | |||||||
| name: Build and publish container images | name: Build and publish container images | ||||||
|  |  | ||||||
| on: | on: | ||||||
| - workflow_dispatch | # - workflow_dispatch | ||||||
|   # push: |   push: | ||||||
|   #   branches: |     branches: | ||||||
|   #   - master |     - master | ||||||
|  |  | ||||||
| jobs: | jobs: | ||||||
|   build-and-publish: |   build-and-publish: | ||||||
|   | |||||||
| @@ -2,10 +2,10 @@ | |||||||
| name: Build container images | name: Build container images | ||||||
|  |  | ||||||
| on: | on: | ||||||
| # - workflow_dispatch | - workflow_dispatch | ||||||
|   push: |   # push: | ||||||
|     branches: |   #   branches: | ||||||
|     - master |   #   - master | ||||||
|  |  | ||||||
| jobs: | jobs: | ||||||
|   build: |   build: | ||||||
|   | |||||||
							
								
								
									
										46
									
								
								.gitea/workflows/deploy-prd.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								.gitea/workflows/deploy-prd.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | |||||||
|  |  | ||||||
|  | name: Deploy staging to production environment | ||||||
|  |  | ||||||
|  | on: | ||||||
|  | - workflow_dispatch | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |   tag-image: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     container: | ||||||
|  |       image: catthehacker/ubuntu:act-latest | ||||||
|  |     steps: | ||||||
|  |     - name: Check out the repo | ||||||
|  |       uses: actions/checkout@v3 | ||||||
|  |  | ||||||
|  |     - name: Log in to the Container registry | ||||||
|  |       uses: docker/login-action@v2 | ||||||
|  |       with: | ||||||
|  |         registry: gitea.jbrumond.me | ||||||
|  |         username: ${{ secrets.REGISTRY_USER }} | ||||||
|  |         password: ${{ secrets.REGISTRY_TOKEN }} | ||||||
|  |  | ||||||
|  |     - name: Tag "stg" with "prod" | ||||||
|  |       run: | | ||||||
|  |         docker pull gitea.jbrumond.me/doc-utils/docs-web:stg | ||||||
|  |         docker tag gitea.jbrumond.me/doc-utils/docs-web:stg gitea.jbrumond.me/doc-utils/docs-web:prod | ||||||
|  |         docker push gitea.jbrumond.me/doc-utils/docs-web:prod | ||||||
|  |  | ||||||
|  |   deploy: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     container: | ||||||
|  |       image: gitea.jbrumond.me/images/kubectl:1.28 | ||||||
|  |     needs: | ||||||
|  |     - tag-image | ||||||
|  |     env: | ||||||
|  |       KUBERNETES_SERVER: https://nephthys.local.jbrumond.me:6443 | ||||||
|  |       KUBERNETES_TOKEN: ${{ secrets.K8S_WEB_NS_SERVICE_ACCT_TOKEN }} | ||||||
|  |       KUBERNETES_CERT: ${{ secrets.K8S_WEB_NS_SERVICE_ACCT_CERT }} | ||||||
|  |     steps: | ||||||
|  |     - name: Configure kubectl and set credentials | ||||||
|  |       run: /bin/kubectl-setup | ||||||
|  |     - name: Deploy "prod" image to kubernetes production (doc-utils.jbrumond.me) | ||||||
|  |       run: | | ||||||
|  |         kubectl -n web set image "deployment/doc-utils-prod-deploy" "doc-utils-prod=gitea.jbrumond.me/doc-utils/docs-web:prod" | ||||||
|  |         kubectl -n web rollout restart "deployment/doc-utils-prod-deploy" | ||||||
|  |         kubectl -n web rollout status "deployment/doc-utils-prod-deploy" | ||||||
							
								
								
									
										46
									
								
								.gitea/workflows/deploy-stg.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								.gitea/workflows/deploy-stg.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | |||||||
|  |  | ||||||
|  | name: Deploy latest to staging environment | ||||||
|  |  | ||||||
|  | on: | ||||||
|  | - workflow_dispatch | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |   tag-image: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     container: | ||||||
|  |       image: catthehacker/ubuntu:act-latest | ||||||
|  |     steps: | ||||||
|  |     - name: Check out the repo | ||||||
|  |       uses: actions/checkout@v3 | ||||||
|  |  | ||||||
|  |     - name: Log in to the Container registry | ||||||
|  |       uses: docker/login-action@v2 | ||||||
|  |       with: | ||||||
|  |         registry: gitea.jbrumond.me | ||||||
|  |         username: ${{ secrets.REGISTRY_USER }} | ||||||
|  |         password: ${{ secrets.REGISTRY_TOKEN }} | ||||||
|  |  | ||||||
|  |     - name: Tag "latest" with "stg" | ||||||
|  |       run: | | ||||||
|  |         docker pull gitea.jbrumond.me/doc-utils/docs-web:latest | ||||||
|  |         docker tag gitea.jbrumond.me/doc-utils/docs-web:latest gitea.jbrumond.me/doc-utils/docs-web:stg | ||||||
|  |         docker push gitea.jbrumond.me/doc-utils/docs-web:stg | ||||||
|  |  | ||||||
|  |   deploy: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     container: | ||||||
|  |       image: gitea.jbrumond.me/images/kubectl:1.28 | ||||||
|  |     needs: | ||||||
|  |     - tag-image | ||||||
|  |     env: | ||||||
|  |       KUBERNETES_SERVER: https://nephthys.local.jbrumond.me:6443 | ||||||
|  |       KUBERNETES_TOKEN: ${{ secrets.K8S_WEB_NS_SERVICE_ACCT_TOKEN }} | ||||||
|  |       KUBERNETES_CERT: ${{ secrets.K8S_WEB_NS_SERVICE_ACCT_CERT }} | ||||||
|  |     steps: | ||||||
|  |     - name: Configure kubectl and set credentials | ||||||
|  |       run: /bin/kubectl-setup | ||||||
|  |     - name: Deploy "stg" image to kubernetes staging (doc-utils-stg.home.jbrumond.me) | ||||||
|  |       run: | | ||||||
|  |         kubectl -n web set image "deployment/doc-utils-stg-deploy" "doc-utils-stg=gitea.jbrumond.me/doc-utils/docs-web:stg" | ||||||
|  |         kubectl -n web rollout restart "deployment/doc-utils-stg-deploy" | ||||||
|  |         kubectl -n web rollout status "deployment/doc-utils-stg-deploy" | ||||||
		Reference in New Issue
	
	Block a user