Fix workflows #58
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
push: | |
branches: | |
- main | |
- "releases/**" | |
paths: | |
- "src/**" | |
- "package.json" | |
- "package-lock.json" | |
pull_request: | |
branches: | |
- main | |
jobs: | |
relabel: | |
name: Relabeler Tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Dump GitHub context | |
if: success() | |
env: | |
GITHUB_CONTEXT: ${{ toJson(github) }} | |
run: echo "$GITHUB_CONTEXT" | |
- name: Check for changes in dist folder | |
if: success() && github.event_name == 'pull_request' | |
run: | | |
if git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | grep -q "^dist/"; then | |
echo "::error::Changes detected in the dist folder. It is not allowed to push dist in a pull request." | |
exit 1 | |
fi | |
- name: Setup Node.js | |
if: success() | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18.x" | |
- name: Install dependencies | |
if: success() | |
run: npm ci | |
- name: Build project | |
id: build | |
if: success() | |
run: npm run build | |
- name: Test | |
id: test | |
if: success() | |
continue-on-error: true | |
run: | | |
npm test | |
- name: Upload coverage to Codecov | |
if: steps.test.outcome != 'skipped' | |
uses: codecov/codecov-action@v3 | |
with: | |
files: ./coverage/lcov.info # cSpell: ignore lcov | |
#token: ${{ secrets.CODECOV_TOKEN }} | |
#token: ${{ env.CODECOV_TOKEN }} | |
flags: unittests # cSpell: ignore unittests | |
name: relabeler-tests | |
verbose: true | |
fail_ci_if_error: true | |
env: | |
CODECOV_TOKEN: ${{ vars.CODECOV_TOKEN }} | |
- name: Upload test results to Codecov | |
if: steps.test.outcome != 'skipped' | |
uses: codecov/test-results-action@v1 | |
with: | |
files: ./testResults/junit.xml | |
flags: unittests | |
name: relabeler-tests-results | |
verbose: true | |
fail_ci_if_error: true | |
#token: ${{ env.CODECOV_TOKEN }} | |
env: | |
CODECOV_TOKEN: ${{ vars.CODECOV_TOKEN }} | |
- name: Create artifact | |
if: steps.build.outcome == 'success' | |
run: | | |
mkdir artifact | |
cp -r dist package.json package-lock.json artifact/ | |
- name: Upload artifact | |
if: steps.build.outcome == 'success' | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build-artifact | |
path: artifact/ | |
- name: Run Relabeler | |
if: steps.test.outcome == 'success' | |
id: relabeler | |
uses: ./ # This uses the action from the root of the branch or PR | |
with: | |
who-to-greet: "GitHub" | |
repositoryToken: ${{ secrets.GITHUB_TOKEN }} | |
- name: Print Relabeler Outputs | |
if: success() | |
run: | | |
echo "Repository: ${{ steps.relabeler.outputs.repository }}" | |
echo "Time: ${{ steps.relabeler.outputs.time }}" |