|
62 | 62 | contents: read |
63 | 63 | steps: |
64 | 64 | - run: true |
65 | | - integration-tests: |
66 | | - needs: approval_required |
67 | | - name: Integration Tests |
68 | | - runs-on: ubuntu-latest |
69 | | - permissions: |
70 | | - contents: read |
71 | | - concurrency: |
72 | | - group: pr-${{ github.event_name }}-${{ github.head_ref }} |
73 | | - cancel-in-progress: true |
74 | | - steps: |
75 | | - # Clone timefold-solver |
76 | | - # No need to check for stale repo, as GitHub merges the main repo into the fork automatically. |
77 | | - - name: Checkout timefold-solver |
78 | | - uses: actions/checkout@v6 |
79 | | - with: |
80 | | - path: ./timefold-solver |
81 | | - ref: ${{ github.event.pull_request.head.sha }} # The GHA event will pull the main branch by default, and we must specify the PR reference version |
82 | | - |
83 | | - - name: Setup Temurin 25 and Maven |
84 | | - uses: actions/setup-java@v5 |
85 | | - with: |
86 | | - java-version: '25' |
87 | | - distribution: 'temurin' |
88 | | - cache: 'maven' |
89 | | - |
90 | | - - name: Quickly build timefold-solver |
91 | | - working-directory: ./timefold-solver |
92 | | - shell: bash |
93 | | - run: ./mvnw -B -Dquickly clean install |
94 | | - |
95 | | - # Clone timefold-solver-enterprise |
96 | | - - name: Checkout timefold-solver-enterprise (PR) # Checkout the PR branch first, if it exists |
97 | | - id: checkout-solver-enterprise |
98 | | - uses: actions/checkout@v6 |
99 | | - continue-on-error: true |
100 | | - with: |
101 | | - repository: TimefoldAI/timefold-solver-enterprise |
102 | | - ref: ${{ github.head_ref }} |
103 | | - token: ${{ secrets.JRELEASER_GITHUB_TOKEN }} # Safe; only used to clone the repo and not stored in the fork. |
104 | | - path: ./timefold-solver-enterprise |
105 | | - fetch-depth: 0 # Otherwise merge will fail on account of not having history. |
106 | | - - name: Checkout timefold-solver-enterprise (main) # Checkout the main branch if the PR branch does not exist |
107 | | - if: steps.checkout-solver-enterprise.outcome != 'success' |
108 | | - uses: actions/checkout@v6 |
109 | | - with: |
110 | | - repository: TimefoldAI/timefold-solver-enterprise |
111 | | - ref: main |
112 | | - token: ${{ secrets.JRELEASER_GITHUB_TOKEN }} # Safe; only used to clone the repo and not stored in the fork. |
113 | | - path: ./timefold-solver-enterprise |
114 | | - fetch-depth: 0 # Otherwise merge will fail on account of not having history. |
115 | | - |
116 | | - - name: Quickly build timefold-solver-enterprise |
117 | | - working-directory: ./timefold-solver-enterprise |
118 | | - shell: bash |
119 | | - run: ./mvnw -B -Dquickly clean install |
120 | | - |
121 | | - # Clone timefold-solver-benchmarks |
122 | | - - name: Checkout timefold-solver-benchmarks (PR) # Checkout the PR branch first, if it exists |
123 | | - if: github.head_ref # Only true if this is a PR. |
124 | | - id: checkout-solver-benchmarks-pr |
125 | | - uses: actions/checkout@v6 |
126 | | - continue-on-error: true |
127 | | - with: |
128 | | - repository: TimefoldAI/timefold-solver-benchmarks |
129 | | - ref: ${{ github.head_ref }} |
130 | | - path: ./timefold-solver-benchmarks |
131 | | - fetch-depth: 0 # Otherwise merge will fail on account of not having history. |
132 | | - - name: Checkout timefold-solver-benchmarks (main) # Checkout the main branch if the PR branch does not exist |
133 | | - if: ${{ steps.checkout-solver-benchmarks-pr.outcome != 'success' }} |
134 | | - uses: actions/checkout@v6 |
135 | | - with: |
136 | | - repository: TimefoldAI/timefold-solver-benchmarks |
137 | | - ref: main |
138 | | - path: ./timefold-solver-benchmarks |
139 | | - fetch-depth: 0 # Otherwise merge will fail on account of not having history. |
140 | | - |
141 | | - - name: Build and test timefold-solver-benchmarks |
142 | | - working-directory: ./timefold-solver-benchmarks |
143 | | - shell: bash |
144 | | - run: ./mvnw -B -DskipJMH clean verify |
145 | | - - name: Test Summary |
146 | | - uses: test-summary/action@2920bc1b1b377c787227b204af6981e8f41bbef3 |
147 | | - with: |
148 | | - paths: "**/TEST-*.xml" |
149 | | - show: "fail" |
150 | | - if: always() |
151 | 65 | enterprise-java: |
152 | 66 | needs: approval_required |
153 | 67 | name: Enterprise Edition (Java) |
@@ -203,6 +117,8 @@ jobs: |
203 | 117 | - name: Build and test timefold-solver-enterprise |
204 | 118 | working-directory: ./timefold-solver-enterprise |
205 | 119 | shell: bash |
| 120 | + env: |
| 121 | + TIMEFOLD_ENTERPRISE_LICENSE: ${{ secrets.TIMEFOLD_SOLVER_CI_PROD_LICENSE }} |
206 | 122 | run: ./mvnw -B clean verify |
207 | 123 | - name: Test Summary |
208 | 124 | uses: test-summary/action@2920bc1b1b377c787227b204af6981e8f41bbef3 |
|
0 commit comments