# This is a basic workflow to help you get started with Actions name: roa_generator on: push: branches: [master] schedule: - cron: "0 6 * * 1" jobs: build: name: Generate ROA if: "!contains(github.event.head_commit.message, '[skip ci]')" runs-on: ubuntu-latest steps: - uses: actions/checkout@master - name: Install dependencies shell: bash run: | sudo apt update -qq sudo apt install -y python3 git openssh-client sudo apt install -y curl curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash export PATH="$HOME/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)" pyenv install 3.8.2 pyenv shell 3.8.2 pip install toml - name: Run roa script shell: bash run: | export PATH="$HOME/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)" pyenv shell 3.8.2 maxlen4=29 maxlen6=64 mkdir -p roa_dir pyenv exec python3 scripts/roa-ng.py -m ${maxlen4} -M ${maxlen6} -o roa_dir/roa46_bird2.conf pyenv exec python3 scripts/roa-ng.py -m ${maxlen4} -M ${maxlen6} -4 -o roa_dir/roa4_bird2.conf pyenv exec python3 scripts/roa-ng.py -m ${maxlen4} -M ${maxlen6} -6 -o roa_dir/roa6_bird2.conf pyenv exec python3 scripts/roa-ng.py -m ${maxlen4} -M ${maxlen6} -j -o roa_dir/roa46.json pyenv exec python3 scripts/roa-ng.py -m ${maxlen4} -M ${maxlen6} -e -o roa_dir/neonetwork.json pyenv exec python3 scripts/roa-ng.py -m ${maxlen4} -M ${maxlen6} -r -o roa_dir/rfc8416.json pyenv exec python3 scripts/roa-ng.py --summary --output roa_dir/README.txt - name: Upload files env: SSHPRIVKEY: ${{ secrets.KEY }} shell: bash run: | cd roa_dir [ -n "$SSHPRIVKEY" ] || (echo SSHPRIVKEY is not set; exit 1) ( set -e; mkdir -p ~/.ssh echo "$SSHPRIVKEY" | base64 -d > ~/.ssh/id_ed25519 chmod 0600 ~/.ssh/id_ed25519 ssh -o StrictHostKeyChecking=no git@github.com || true git init && git add . git config user.name "neonet roa bot" git config user.email "bot@github.com" git commit -m "Generated at $(TZ='UTC' date +%Y%m%d-%H%M%S.%N)" git push --force --quiet "git@github.com:NeoCloud/NeoNetwork-ROA.git" HEAD:master ) || (shred ~/.ssh/id_ed25519; exit 1) shred ~/.ssh/id_ed25519