FOSSA Scan - Do Not Merge #26
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: Pull Request | |
on: | |
pull_request: | |
branches: | |
- main | |
env: | |
THIRD_PARTY_GIT_AUTHOR_EMAIL: opensource+bot@newrelic.com | |
THIRD_PARTY_GIT_AUTHOR_NAME: nr-opensource-bot | |
jobs: | |
job-test-unit: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Setup Node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Cache node_modules | |
id: cache-node-modules | |
uses: actions/cache@v2 | |
env: | |
cache-name: node-modules | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-${{ env.cache-name }}- | |
- name: Install Dependencies | |
run: npm ci | |
- name: Lint | |
run: npm run lint | |
- name: Typescript Build | |
run: npm run build | |
- name: NCC Package | |
run: npm run package | |
- name: Test | |
run: npm run test | |
- name: Coverage | |
uses: codecov/codecov-action@v1 | |
job-test-system: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Cache Docker layers | |
uses: actions/cache@v2 | |
with: | |
path: /tmp/.buildx-cache | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Docker Build | |
uses: docker/build-push-action@v2 | |
with: | |
tags: ${{ github.repository }}:latest | |
load: true | |
cache-from: type=local,src=/tmp/.buildx-cache | |
cache-to: type=local,dest=/tmp/.buildx-cache | |
- name: Run Action (JSON) | |
id: repolinter-json | |
run: > | |
docker run -t | |
-v ${{ github.workspace }}:/github/workspace -w /github/workspace | |
-e INPUT_DIRECTORY=/github/workspace | |
-e INPUT_TOKEN=${{ github.token }} | |
-e INPUT_USERNAME=app/github-actions | |
-e INPUT_CONFIG_FILE=./.github/workflows/test-rulesets/repolinter-test.json | |
-e INPUT_REPOSITORY=${{ github.repository }} | |
-e INPUT_OUTPUT_TYPE=exit-code | |
-e INPUT_OUTPUT_NAME="[Repolinter] Open Source Policy Issues" | |
-e INPUT_LABEL_NAME=repolinter | |
-e INPUT_LABEL_COLOR=fbca04 | |
-e GITHUB_RUN_NUMBER=${{ github.run_number }} | |
-e GITHUB_ACTION=true | |
${{ github.repository }}:latest | |
- name: Verify Outputs | |
env: | |
DID_ERROR: ${{ steps.repolinter-json.outputs.errored }} | |
DID_PASS: ${{ steps.repolinter-json.outputs.passed }} | |
shell: bash | |
run: '[ "$DID_ERROR" = "false" ] && [ "$DID_PASS" = "true" ]' | |
- name: Run Action (YAML) | |
id: repolinter-yaml | |
run: > | |
docker run -t | |
-v ${{ github.workspace }}:/github/workspace -w /github/workspace | |
-e INPUT_DIRECTORY=/github/workspace | |
-e INPUT_TOKEN=${{ github.token }} | |
-e INPUT_USERNAME=app/github-actions | |
-e INPUT_CONFIG_FILE=./.github/workflows/test-rulesets/repolinter-test.yaml | |
-e INPUT_REPOSITORY=${{ github.repository }} | |
-e INPUT_OUTPUT_TYPE=exit-code | |
-e INPUT_OUTPUT_NAME="[Repolinter] Open Source Policy Issues" | |
-e INPUT_LABEL_NAME=repolinter | |
-e INPUT_LABEL_COLOR=fbca04 | |
-e GITHUB_RUN_NUMBER=${{ github.run_number }} | |
-e GITHUB_ACTION=true | |
${{ github.repository }}:latest | |
- name: Verify Outputs | |
env: | |
DID_ERROR: ${{ steps.repolinter-yaml.outputs.errored }} | |
DID_PASS: ${{ steps.repolinter-yaml.outputs.passed }} | |
shell: bash | |
run: '[ "$DID_ERROR" = "false" ] && [ "$DID_PASS" = "true" ]' | |
# For testing only - uncomment and use this job to generate a pre-release | |
# Note: will also need to update the docker image used in action.yml once | |
# this worklfow publishes the image | |
# job-generate-pre-release: | |
# runs-on: ubuntu-latest | |
# needs: [job-test-unit, job-test-system] | |
# steps: | |
# - name: Checkout repo | |
# uses: actions/checkout@v3 | |
# - name: Setup Node.js | |
# uses: actions/setup-node@v2 | |
# with: | |
# node-version: 16 | |
# - name: Download Cached Deps | |
# id: cache-node-modules | |
# uses: actions/cache@v2 | |
# env: | |
# cache-name: node-modules | |
# with: | |
# path: ~/.npm | |
# key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
# restore-keys: | | |
# ${{ runner.os }}-${{ env.cache-name }}- | |
# - name: Install Dependencies | |
# run: npm ci | |
# - name: Build | |
# run: npm run build | |
# - name: Package | |
# run: npm run package | |
# - name: Cache Docker layers | |
# uses: actions/cache@v2 | |
# with: | |
# path: /tmp/.buildx-cache | |
# key: ${{ runner.os }}-buildx-${{ github.sha }} | |
# restore-keys: | | |
# ${{ runner.os }}-buildx- | |
# - name: Set up Docker Buildx | |
# uses: docker/setup-buildx-action@v1 | |
# - name: Login to GitHub Container Registry | |
# uses: docker/login-action@v1 | |
# with: | |
# registry: ghcr.io | |
# username: ${{ github.actor }} | |
# password: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Gather Docker Labels | |
# id: docker_meta | |
# uses: crazy-max/ghaction-docker-meta@v2 | |
# with: | |
# images: ghcr.io/${{ github.repository }} | |
# - name: Build and Push to GitHub Container Registry | |
# uses: docker/build-push-action@v2 | |
# with: | |
# context: . | |
# push: true | |
# labels: ${{ steps.docker_meta.outputs.labels }} | |
# cache-from: type=local,src=/tmp/.buildx-cache | |
# cache-to: type=local,dest=/tmp/.buildx-cache | |
# tags: >- | |
# ghcr.io/${{ github.repository }}:${{ github.ref_name }}-${{ github.sha }} |