Skip to content

ci: support releases with branch-protection #273

ci: support releases with branch-protection

ci: support releases with branch-protection #273

Workflow file for this run

---
name: ci
on:
push:
branches:
- main
paths-ignore:
- '**.md'
- '**.asciidoc'
pull_request:
branches:
- main
paths-ignore:
- '**.md'
- '**.asciidoc'
# Limit the access of the generated GITHUB_TOKEN
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
permissions:
statuses: write
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: actions/setup-node@v3
with:
node-version-file: '.nvmrc'
- run: '.ci/scripts/lint.sh'
- run: 'npm run ci:bundlesize'
id: bundlesize
# TODO: This fails on forked PRs
# - uses: actions/github-script@v6
# env:
# BUNDLESIZE_PASS: ${{ steps.bundlesize.outputs.bundlesize_pass }}
# BUNDLESIZE_FAIL: ${{ steps.bundlesize.outputs.bundlesize_fail }}
# with:
# script: |
# const { BUNDLESIZE_PASS, BUNDLESIZE_FAIL } = process.env;
# let state = 'success';
# if (BUNDLESIZE_FAIL > 0) {
# state = 'failure';
# }
# github.rest.repos.createCommitStatus({
# ...context.repo,
# sha: context.sha,
# state: state,
# context: `${context.workflow} / Bundlesize: ${BUNDLESIZE_PASS} pass / ${BUNDLESIZE_FAIL} fail`,
# });
test-puppeteer:
name: Test Puppeteer
runs-on: ubuntu-latest
strategy:
matrix:
stack-version:
- '8.0.0-SNAPSHOT'
- '8.10.4'
scope:
- '@elastic/apm-rum'
- '@elastic/apm-rum-core'
- '@elastic/apm-rum-react'
- '@elastic/apm-rum-angular'
- '@elastic/apm-rum-vue'
steps:
- uses: actions/checkout@v3
- name: Run puppeteer tests
uses: ./.github/workflows/run-test
with:
goal: 'test'
scope: ${{ matrix.scope }}
stack-version: ${{ matrix.stack-version }}
all:
if: always()
runs-on: ubuntu-latest
needs:
- lint
- test-puppeteer
steps:
- id: check
uses: elastic/apm-pipeline-library/.github/actions/check-dependent-jobs@current
with:
needs: ${{ toJSON(needs) }}
- run: ${{ steps.check.outputs.isSuccess }}
coverage:
name: Coverage
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run coverage
uses: ./.github/workflows/run-test
with:
goal: 'coverage'
stack-version: '8.10.4'