Add GitHub Actions workflow for building Helm chart #31
							
								
								
									
										43
									
								
								.gitea/workflows/build-chart-paperless-ngx.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								.gitea/workflows/build-chart-paperless-ngx.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,43 @@
 | 
				
			|||||||
 | 
					name: "Build Helm Chart"
 | 
				
			||||||
 | 
					on:
 | 
				
			||||||
 | 
					  push:
 | 
				
			||||||
 | 
					    branches:
 | 
				
			||||||
 | 
					      - main
 | 
				
			||||||
 | 
					    paths:
 | 
				
			||||||
 | 
					      - "charts/paperless-ngx/Chart.yaml"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  helm-package:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    env:
 | 
				
			||||||
 | 
					      APP: charts/pperless-ngx
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					      - name: Checkout repository
 | 
				
			||||||
 | 
					        uses: actions/checkout@v3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Set Helm Chart App Name and Version
 | 
				
			||||||
 | 
					        id: get_version
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          APP_NAME=$(grep -oP '(?<=^name: ).*' ${{ env.APP }}/Chart.yaml)
 | 
				
			||||||
 | 
					          echo "Helm Chart App Name: $APP_NAME"
 | 
				
			||||||
 | 
					          echo "::set-output name=app::$APP_NAME"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          CHART_VERSION=$(grep -oP '(?<=^version: ).*' ${{ env.APP }}/Chart.yaml)
 | 
				
			||||||
 | 
					          echo "Helm Chart version: $CHART_VERSION"
 | 
				
			||||||
 | 
					          echo "::set-output name=tag::$CHART_VERSION"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Setup Helm
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          #curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
 | 
				
			||||||
 | 
					          curl -kSso /usr/local/bin/helm https://debmirror.cooltux.net/helm-v3.18.4 && chmod +x /usr/local/bin/helm
 | 
				
			||||||
 | 
					          helm version
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Package Helm Chart
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          helm dependency update ${{ env.APP }}
 | 
				
			||||||
 | 
					          helm lint ${{ env.APP }}
 | 
				
			||||||
 | 
					          helm package ${{ env.APP }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Upload Helm Package to repo
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          curl --user ${{ secrets.USER }}:${{ secrets.TOKEN }} -X POST --upload-file ./${{ steps.get_version.outputs.app }}-${{ steps.get_version.outputs.tag }}.tgz ${{ vars.HELMREGISTRY }}/api/packages/${{ vars.OWNER }}/helm/api/charts
 | 
				
			||||||
		Reference in New Issue
	
	Block a user