Skip to content

Import Packages

Import Packages #950

Workflow file for this run

# This workflow automates daily imports of new releases for legacy packages.
name: Import Packages
# The importer is run every day at 07:00 UTC and can also be run manually from
# the 'Actions' tab.
on:
workflow_dispatch:
schedule:
- cron: "0 7 * * *"
jobs:
build:
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.PACCHETTIBOTTI_TOKEN }}
PACCHETTIBOTTI_TOKEN: ${{ secrets.PACCHETTIBOTTI_TOKEN }}
PACCHETTIBOTTI_ED25519_PUB: ${{ secrets.PACCHETTIBOTTI_ED25519_PUB }}
PACCHETTIBOTTI_ED25519: ${{ secrets.PACCHETTIBOTTI_ED25519 }}
SPACES_KEY: ${{ secrets.SPACES_KEY }}
SPACES_SECRET: ${{ secrets.SPACES_SECRET }}
DHALL_TYPES: "./types"
HEALTHCHECKS_URL: "N/A"
steps:
# Checks out the registry-dev repository so we can run scripts from it
- uses: actions/checkout@v3
with:
repository: purescript/registry-dev
token: ${{ env.PACCHETTIBOTTI_TOKEN }}
ref: master
- name: Set current time
run: echo "NOW=$(date)" >> $GITHUB_ENV
- name: Cache importer artifacts
uses: actions/cache@v2
with:
# This cache directory is meant to be essentially permanent, with cache
# expiry implemented in code. However, we never want this to be a direct
# cache hit, or else new writes to the cache won't be saved. We want a
# partial hit by using a restore-key, which means the cache will always
# be saved with new changes, and will always be restored.
key: cache-2-${{ env.NOW }}
restore-keys: |
cache-2-
path: |
scratch/.cache
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@v4
with:
github-token: ${{ env.PACCHETTIBOTTI_TOKEN }}
- name: Setup Nix cache
uses: DeterminateSystems/magic-nix-cache-action@v2
- name: Run the transferrer
run: nix run .#package-transferrer
- name: Import packages
run: nix run .#legacy-importer update-registry
- name: Import new versions to the package sets
run: nix run .#package-set-updater commit