reloadable page #267
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: biocollect build | |
on: | |
push: | |
branches: | |
- develop | |
- master | |
- feature/** | |
- hotfix/** | |
env: | |
TZ: Australia/Canberra | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 11 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '11' | |
distribution: 'adopt' | |
- name: Install nodejs | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
- run: npm install | |
- name: Validate Gradle wrapper | |
uses: gradle/[email protected] | |
- name: Install and start elasticsearch | |
run: | | |
curl https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.16.3-amd64.deb -o elasticsearch.deb | |
sudo dpkg -i --force-confnew elasticsearch.deb | |
sudo chown -R elasticsearch:elasticsearch /etc/default/elasticsearch | |
sudo sh -c 'echo ES_JAVA_OPTS=\"-Xmx1g -Xms1g\" >> /etc/default/elasticsearch' | |
sudo service elasticsearch restart | |
- name: Setup required MERIT folders | |
run: | | |
sudo mkdir -p /data/fieldcapture/cache | |
sudo chmod o+xw /data | |
sudo chmod o+xw /data/fieldcapture | |
sudo chmod o+xw /data/fieldcapture/cache | |
- name: Install and start mongodb | |
uses: supercharge/[email protected] | |
with: | |
mongodb-version: '5.0' | |
- name: Read the biocollect version from the gradle.properties file | |
id: read_property | |
uses: christian-draeger/[email protected] | |
with: | |
path: './gradle.properties' | |
properties: 'biocollectVersion' | |
- name: Get the package id for the version read from the properties file | |
uses: castlabs/[email protected] | |
id: versions | |
with: | |
version: ${{steps.read_property.outputs.biocollectVersion}} | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Delete the github package with the id we just retrieved (all SNAPSHOT versions are considered part of the same package) | |
uses: actions/delete-package-versions@v2 | |
if: ${{ steps.versions.outputs.ids != '' }} | |
with: | |
package-version-ids: "${{ steps.versions.outputs.ids }}" | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: build biocollect before running js unit test to compile dependent js templates | |
uses: gradle/[email protected] | |
with: | |
arguments: _Events | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Run javascript unit tests | |
run: node_modules/karma/bin/karma start karma.conf.js --single-run --browsers ChromeHeadless | |
- name: Run BioCollect functional tests | |
run: ./src/main/scripts/runFunctionalTests.sh chromeHeadless /tmp/ecodata feature/cognito | |
continue-on-error: true | |
env: | |
GITHUB_ACTOR: ${{env.GITHUB_ACTOR}} | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
- name: Archive log directory | |
uses: actions/upload-artifact@v4 | |
with: | |
path: ./logs | |
- name: Clean to remove clover instrumentation | |
uses: gradle/[email protected] | |
with: | |
arguments: clean | |
- name: Publish the JAR to the repository | |
uses: gradle/[email protected] | |
with: | |
arguments: publish | |
env: | |
TRAVIS_DEPLOY_USERNAME: ${{secrets.DEPLOY_USERNAME}} | |
TRAVIS_DEPLOY_PASSWORD: ${{secrets.DEPLOY_PASSWORD}} |