| 1234567891011121314151617181920212223242526272829303132333435363738 |
- name: Package Trigger Main
- on:
- workflow_dispatch:
- jobs:
- package-trigger-master:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2.3.3
- - name: Package Trigger
- if: github.ref == 'refs/heads/master'
- run: |
- if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_TVHEADEND_MASTER }}" ]; then
- echo "**** Github secret PAUSE_PACKAGE_TRIGGER_TVHEADEND_MASTER is set; skipping trigger. ****"
- exit 0
- fi
- if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-tvheadend/job/master/lastBuild/api/json | jq -r '.building') == "true" ]; then
- echo "**** There already seems to be an active build on Jenkins; skipping package trigger ****"
- exit 0
- fi
- echo "**** Package trigger running off of master branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_TVHEADEND_MASTER\". ****"
- response=$(curl -iX POST \
- https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-tvheadend/job/master/buildWithParameters?PACKAGE_CHECK=true \
- --user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
- echo "**** Jenkins job queue url: ${response%$'\r'} ****"
- echo "**** Sleeping 10 seconds until job starts ****"
- sleep 10
- buildurl=$(curl -s "${response%$'\r'}api/json" | jq -r '.executable.url')
- buildurl="${buildurl%$'\r'}"
- echo "**** Jenkins job build url: ${buildurl} ****"
- echo "**** Attempting to change the Jenkins job description ****"
- curl -iX POST \
- "${buildurl}submitDescription" \
- --user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} \
- --data-urlencode "description=GHA package trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
- --data-urlencode "Submit=Submit"
|