Skip to content

get_griis

get_griis #54

name: get_griis
on:
schedule:
- cron: '0 0 1 1-12 *'
workflow_dispatch:
jobs:
get-griis:
runs-on: ${{ matrix.config.os }}
environment: ${{ github.ref == 'refs/heads/main' && 'PROD' || 'UAT' }}
strategy:
fail-fast: false
matrix:
config:
- {os: ubuntu-latest, r: 'release'}
env:
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
RSPM: ${{ matrix.config.rspm }}
GITHUB_TOKEN: ${{ secrets.AUTOMATISATION }}
gbif_user: ${{ secrets.GBIF_USER }}
email: ${{ secrets.GBIF_EMAIL }}
gbif_pwd: ${{ secrets.GBIF_PWD }}
USERNAME: ${{ secrets.USERNAME }}
S3_BUCKET: ${{ secrets.S3_BUCKET }}
amiabot: ${{ secrets.AMIABOT }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.AUTOMATISATION }}
- name: Setup R
uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
- name: Setup pandoc
uses: r-lib/actions/setup-pandoc@v2
- name: Install linux libraries
run: |
sudo apt install libsodium-dev
sudo apt-get install libcurl4-openssl-dev
sudo apt-get install libgdal-dev libproj-dev
sudo apt install libudunits2-dev
sudo apt install libharfbuzz-dev
sudo apt install libfribidi-dev
sudo apt-get install -y libfontconfig1-dev
R --no-save -e 'install.packages("devtools")'
R --no-save -e 'devtools::install_github("inbo/INBOtheme@v0.5.9", force = TRUE)'
R --no-save -e 'devtools::install_github("inbo/alien-species-portal@uat",
subdir = "alienSpecies", force = TRUE)'
- name: Install R packages
run: |
source("src/install_packages_get_griis.R")
shell: Rscript {0}
- name: Setup AWS credentials
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
- name: Assume Role
id: assume_role
run: |
ROLE_ARN="${{ secrets.AWS_ROLE_ARN }}"
TEMP_ROLE=$(aws sts assume-role \
--role-arn $ROLE_ARN \
--role-session-name inbo-deployment)
echo "::set-output name=AWS_ACCESS_KEY_ID::$(echo $TEMP_ROLE | jq -r .Credentials.AccessKeyId)"
echo "::set-output name=AWS_SECRET_ACCESS_KEY::$(echo $TEMP_ROLE | jq -r .Credentials.SecretAccessKey)"
echo "::set-output name=AWS_SESSION_TOKEN::$(echo $TEMP_ROLE | jq -r .Credentials.SessionToken)"
- name: download_griis_checklist
run: |
source("src/download_griis_checklist.R")
shell: Rscript {0}
env:
AWS_ACCESS_KEY_ID: ${{ steps.assume_role.outputs.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ steps.assume_role.outputs.AWS_SECRET_ACCESS_KEY }}
AWS_SESSION_TOKEN: ${{ steps.assume_role.outputs.AWS_SESSION_TOKEN }}
AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
S3_BUCKET: ${{ secrets.S3_BUCKET }}
- name: Commit and push changes
uses: devops-infra/action-commit-push@master
with:
github_token: ${{ secrets.AUTOMATISATION }}
commit_prefix: "[AUTO]"
commit_message: "update griis checklist"
target_branch: automatic-griis-checklist
- name: Get branch name
run: |
git branch --show-current
- name: Create pull request
uses: devops-infra/action-pull-request@v0.4.2
with:
github_token: ${{ secrets.AUTOMATISATION }}
target_branch: uat
title: "[AUTO] download griis checklist"
template: .github/PR_download_griis_checklist.md
reviewer: SanderDevisscher
label: automated workflow
get_diff: false