Skip to content

Weekly deploy

Weekly deploy #335

Workflow file for this run

name: Weekly deploy
on:
schedule:
# every sunday
- cron: '0 0 * * 0'
jobs:
checkLinkedin:
uses: ./.github/workflows/check-linkedin.yml
secrets: inherit
deploy:
needs: checkLinkedin
runs-on: ubuntu-22.04
env:
BIBSONOMY_USER: ${{ vars.BIBSONOMY_USER }}
BIBSONOMY_API_TOKEN: ${{ secrets.BIBSONOMY_API_TOKEN }}
steps:
# use master branch
- uses: actions/checkout@v4
with:
ref: master
- name: Use Node.js 14 (build)
uses: actions/setup-node@v4
with:
node-version: '14'
- name: configure DNS server
run: |
sudo mkdir /usr/lib/systemd/resolved.conf.d
echo "[Resolve]" > resolved.conf
echo "DNS=8.8.8.8" >> resolved.conf
sudo mv resolved.conf /usr/lib/systemd/resolved.conf.d/resolved.conf
sudo systemctl daemon-reload
sudo systemctl restart systemd-networkd
sudo systemctl restart systemd-resolved
- name: install and lint
working-directory: ./scripts
run: |
npm install
npm run lint
- name: update papers
working-directory: ./scripts
run: |
rm ../data/**/_Example.ttl
npm run papers
- name: 'build (runs prebuild: fetch LinkedIn posts)'
working-directory: ./scripts
env:
LINKEDIN_ACCESS_TOKEN: ${{ secrets.LINKEDIN_ACCESS_TOKEN }}
LINKEDIN_ORG_ID: '88654324'
LINKEDIN_VERSION: ${{ vars.LINKEDIN_VERSION}}
GATSBY_LINKEDIN_CLIENT_ID: ${{ vars.LINKEDIN_CLIENT_ID }}
run: npm run build
- name: prepare deploy
working-directory: ./scripts
run: |
cp exoframe.json public/
cp Dockerfile public/
- name: Use Node.js 22 (deploy tooling)
uses: actions/setup-node@v4
with:
node-version: '22'
- name: deploy
working-directory: ./scripts/public
run: npx -y exoframe@6.2.0 -u -vvv -e https://dice-website.cs.upb.de -t "$EXO_TOKEN_DICE"
env:
EXO_TOKEN_DICE: ${{ secrets.EXO_TOKEN_DICE }}
uploadData:
needs: deploy
runs-on: ubuntu-latest
env:
BIBSONOMY_USER: ${{ vars.BIBSONOMY_USER }}
BIBSONOMY_API_TOKEN: ${{ secrets.BIBSONOMY_API_TOKEN }}
steps:
- uses: actions/checkout@v4
with:
ref: master
- name: Use Node.js 14
uses: actions/setup-node@v4
with:
node-version: '14'
- name: configure DNS server
run: |
sudo mkdir /usr/lib/systemd/resolved.conf.d
echo "[Resolve]" > resolved.conf
echo "DNS=8.8.8.8" >> resolved.conf
sudo mv resolved.conf /usr/lib/systemd/resolved.conf.d/resolved.conf
sudo systemctl daemon-reload
sudo systemctl restart systemd-networkd
sudo systemctl restart systemd-resolved
- name: install and lint
working-directory: ./scripts
run: |
npm install
npm run lint
- name: update papers
working-directory: ./scripts
run: |
rm ../data/**/_Example.ttl
npm run papers
- name: collect RDF data
run: cat `find . -name "*.ttl" | grep -v "_Example.ttl"` > data.ttl
- name: upload to FTP
uses: tomasbkk/action-ftp-upload@v1.2
with:
user: ${{ secrets.FTP_USER }}
password: ${{ secrets.FTP_PASSWORD }}
host: ${{ secrets.FTP_HOST }}
src: data.ttl
dest: public/website/data/data.ttl
secure: true
rejectUnauthorized: false