-
Notifications
You must be signed in to change notification settings - Fork 1
29 lines (25 loc) · 1.17 KB
/
jenkins-trigger.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
name: Trigger Jenkins Job
on:
push:
branches:
- '**' # This will trigger the workflow on any branch that receives a push
workflow_dispatch: # This allows the workflow to be manually triggered if needed
jobs:
trigger-job:
runs-on: ubuntu-latest
steps:
# Step 1: Get the branch name and build the URL for Jenkins
- name: Get branch name and build Jenkins URL
run: |
BRANCH_NAME=${GITHUB_REF#refs/heads/} # Remove 'refs/heads/' from GITHUB_REF
JENKINS_URL="https://automation.prms.cgiar.org/job/prms-reporting-tool-${BRANCH_NAME}/build"
echo "Jenkins job URL for the branch $BRANCH_NAME is: $JENKINS_URL"
echo "JENKINS_URL=${JENKINS_URL}" >> $GITHUB_ENV
# Step 2: Execute the curl command to trigger the job in Jenkins with the dynamically built URL
- name: Trigger Jenkins Job
run: |
curl -X POST ${{ env.JENKINS_URL }} --user ${{ secrets.JENKINS_USERNAME }}:${{ secrets.JENKINS_API_TOKEN }}
env:
JENKINS_URL: ${{ env.JENKINS_URL }}
JENKINS_USERNAME: ${{ secrets.JENKINS_USERNAME }}
JENKINS_API_TOKEN: ${{ secrets.JENKINS_API_TOKEN }}