Skip to content

Merge pull request #3 from Irys-xyz/feat/reload #15

Merge pull request #3 from Irys-xyz/feat/reload

Merge pull request #3 from Irys-xyz/feat/reload #15

Workflow file for this run

name: Test and build AR.IO core
on: [push, pull_request, workflow_dispatch]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
permissions:
actions: write
id-token: write
contents: read
checks: write
packages: write
pull-requests: write
env:
AWS_ACCOUNT_ID: ${{ secrets.AWS_ACCOUNT_ID }}
AWS_REGION: ${{ secrets.AWS_REGION }}
ECR_REGISTRY: ${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.${{ secrets.AWS_REGION }}.amazonaws.com
steps:
# Setup
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# Build and test TypeScript
- run: yarn --immutable --immutable-cache
- run: yarn build
- run: yarn test:ci
# Test results report
- name: Report test results
uses: dorny/test-reporter@v1
if: >
(success() || failure()) &&
(github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository)
with:
name: Mocha tests
path: test-results.json
reporter: mocha-json
# Codecov report
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# # Build and push container image to GCR
# - name: Log in to the GitHub Container Registry
# if: github.ref == 'refs/heads/develop'
# uses: docker/login-action@v1
# with:
# registry: ghcr.io
# username: ${{ github.actor }}
# password: ${{ secrets.GITHUB_TOKEN }}
# - name: Build and push container image to GitHub Container Registry
# if: github.ref == 'refs/heads/develop'
# uses: docker/build-push-action@v3
# with:
# push: true
# tags: |
# ghcr.io/ar-io/ar-io-core:latest
# ghcr.io/ar-io/ar-io-core:${{ github.sha }}
# # Build and push container image to ECR
# - name: Configure AWS credentials
# if: github.event_name != 'pull_request'
# uses: aws-actions/configure-aws-credentials@v2
# with:
# role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ secrets.AWS_BUILD_INVOCATION_ROLE }}
# aws-region: ${{ secrets.AWS_REGION }}
# - name: Login to ECR
# if: github.ref == 'refs/heads/develop'
# uses: aws-actions/amazon-ecr-login@v1
# - name: Push image ECR
# if: github.ref == 'refs/heads/develop'
# uses: docker/build-push-action@v3
# with:
# labels: |
# org.opencontainers.image.revision=${{ github.sha }}
# push: true
# tags: |
# ${{ env.ECR_REGISTRY }}/ar-io-core:develop
# ${{ env.ECR_REGISTRY }}/ar-io-core:${{ github.sha }}
# # Start CodePipeline to test image
# - name: Start CodePipeline
# if: github.ref == 'refs/heads/develop'
# run: |
# aws codepipeline start-pipeline-execution \
# --name ${{ secrets.AWS_CODEPIPELINE_NAME }}
# # Success notification
# - name: Send Slack success notification
# if: success() && github.event_name != 'pull_request'
# env:
# SLACK_TITLE: Build succeeded!
# SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
# uses: rtCamp/action-slack-notify@v2
# # Failure notification
# - name: Send Slack failure notification
# if: failure() && github.event_name != 'pull_request'
# env:
# SLACK_TITLE: Build failed!
# SLACK_COLOR: danger
# SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
# uses: rtCamp/action-slack-notify@v2