diff --git a/.github/workflows/compile_test.yml b/.github/workflows/compile_test.yml new file mode 100644 index 000000000..40ca1ec59 --- /dev/null +++ b/.github/workflows/compile_test.yml @@ -0,0 +1,39 @@ +name: Test compilation + +on: + - push + - pull_request + +env: + BUNDLE_WITHOUT: 'test lint' + +jobs: + Build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: nelonoel/branch-name@v1.0.1 + + - name: Setup node + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + + # Actually run our build + - name: Create Build + run: ./compile-build + + # Create a release tag based on the branch name and .release-version file + - name: Set release tag + # https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable + # On the develop branch this might create RELEASE_VERSION=2.4.6-987654321-develop + # On the master branch this would then only create RELEASE_VERSION=2.4.6 + run: echo "RELEASE_VERSION=$(printf -- '%s%s\n' $(cat .release-version) $([ ${BRANCH_NAME} = "develop" ] && printf -- '-%s-develop' ${GITHUB_RUN_ID} || echo ""))" >> $GITHUB_ENV + + # Do not actually save build or create release itself