Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 1 | # use the verse rocker image, as it contains tidyverse, devtools and some texlive |
| 2 | image: rocker/tidyverse |
| 3 | |
| 4 | # define stages of runner. at the moment, |
| 5 | # just build (no test or deploy). |
| 6 | stages: |
| 7 | - build |
| 8 | |
| 9 | build-job: |
| 10 | stage: build |
| 11 | |
| 12 | cache: |
| 13 | key: revealjs |
| 14 | paths: |
| 15 | - ./cache |
| 16 | |
| 17 | artifacts: |
| 18 | paths: |
| 19 | - "target/*" |
Marc Kupietz | fbf254d | 2023-10-09 15:10:42 +0200 | [diff] [blame] | 20 | - "target/ids_files/*" |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 21 | |
| 22 | before_script: |
| 23 | - source `find .. -name section_helper.sh` |
| 24 | |
| 25 | - start_section install_linux_packages "Installing missing Linux packages" |
| 26 | - apt-get update |
Marc Kupietz | 02d582a | 2023-10-09 20:11:52 +0200 | [diff] [blame] | 27 | - apt-get install -y libvulkan1 libu2f-udev fonts-liberation build-essential libglpk40 libcurl4-gnutls-dev libxml2-dev libsodium-dev libsecret-1-dev libfontconfig1-dev libssl-dev libxt6 libpq-dev imagemagick libnss3 libgbm-dev libxss1 libappindicator3-1 libasound2 libatk-bridge2.0-0 libgtk-3-0 libnspr4 libnss3 libgbm-dev ca-certificates curl gnupg |
| 28 | - curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg |
| 29 | - NODE_MAJOR=20 |
| 30 | - echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list |
| 31 | - apt-get update && apt-get install nodejs -y |
| 32 | - node --version |
| 33 | - npm install puppeteer |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 34 | - locale-gen de_DE.utf8 en_GB.utf8 en_US.utf8 |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 35 | - end_section install_linux_packages |
| 36 | |
Marc Kupietz | 02d582a | 2023-10-09 20:11:52 +0200 | [diff] [blame] | 37 | - start_section test_puppeteer "Testing puppeteer" |
| 38 | - ./ci/screenshot https://www.google.com /tmp/google.png |
| 39 | - end_section test_puppeteer |
Marc Kupietz | fbf254d | 2023-10-09 15:10:42 +0200 | [diff] [blame] | 40 | |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 41 | - start_section install_r_packages "Installing missing R packages" |
Marc Kupietz | e8dc30b | 2023-10-09 12:16:30 +0200 | [diff] [blame] | 42 | - R -e "install.packages(c('devtools', 'RKorAPClient', 'httr', 'tidytext', 'httpuv', 'scales', 'sp', 'raster', 'kableExtra', 'DT', 'svglite', 'qrcode', 'rsvg', 'highcharter'))" |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 43 | - R -e 'devtools::install_git("https://korap.ids-mannheim.de/gerrit/IDS-Mannheim/idsThemeR")' |
Marc Kupietz | 2b548bc | 2023-10-09 07:21:59 +0200 | [diff] [blame] | 44 | - R -e 'devtools::install(".")' |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 45 | - end_section install_r_packages |
| 46 | |
| 47 | script: |
| 48 | - start_section render "Running scripts" |
| 49 | - R_CACHE_ROOTPATH=./cache R -e "require(rmarkdown); render('examples/ids.Rmd', output_format='revealjs::revealjs_presentation', output_dir='target')" |
Marc Kupietz | 02d582a | 2023-10-09 20:11:52 +0200 | [diff] [blame] | 50 | - ./ci/screenshot file://`pwd`/target/ids.html target/title.png |
| 51 | file://`pwd`/target/ids.html#/light-verb-constructions target/lvc.png |
| 52 | file://`pwd`/target/ids.html#/registered-users target/users.png |
| 53 | file://`pwd`/target/ids.html#/references target/references.png |
Marc Kupietz | b80aa78 | 2023-10-08 23:33:26 +0200 | [diff] [blame] | 54 | - end_section render |