Skip to content

.github/workflows/mirror.yml #961

.github/workflows/mirror.yml

.github/workflows/mirror.yml #961

Workflow file for this run

on:
workflow_dispatch:
schedule:
- cron: "30 5,17 * * *"
jobs:
mirror_tags:
name: Tag ${{ matrix.repo }}
strategy:
fail-fast: false
matrix:
repo:
# Please keep this sorted.
- astro/deadnix
- cachix/nixpkgs-python
- figsoda/utf8
- hyprwm/Hyprland
- infinisil/nixus
- kamadorueda/alejandra
- kamadorueda/nixel
- Mic92/nix-update
- Mic92/nixos-shell
- Mic92/nixpkgs-review
- Mic92/ssh-to-age
- nerdypepper/statix
- nix-community/disko
- nix-community/lanzaboote
- nix-community/nix-direnv
- nix-community/nix-eval-jobs
- nix-community/nixd
- nix-community/nixpkgs-fmt
- NixOS/nix
- vlinkz/nix-software-center
- zhaofengli/colmena
runs-on: ubuntu-latest
permissions:
contents: write # In order to upload artifacts to GitHub releases
id-token: write # In order to request a JWT for AWS auth
steps:
- uses: DeterminateSystems/nix-installer-action@main
- uses: DeterminateSystems/magic-nix-cache-action@main
- uses: oprypin/find-latest-tag@v1
with:
repository: ${{ matrix.repo }}
id: tagfetch
- name: Checkout
uses: actions/checkout@v4
with:
repository: ${{ matrix.repo }}
ref: ${{ steps.tagfetch.outputs.tag }}
- name: Release to FlakeHub
uses: DeterminateSystems/flakehub-push@main
with:
mirror: true
visibility: public
repository: ${{ matrix.repo }}
tag: ${{ steps.tagfetch.outputs.tag }}
log-directives: flakehub_push=trace
logger: pretty
rolling:
name: Branch ${{ matrix.repo }}#${{ matrix.branch }}
strategy:
fail-fast: false
matrix:
include:
# Please keep this sorted.
- repo: cachix/git-hooks.nix
branch: master
- repo: cole-h/nixos-config
branch: darwin
- repo: danth/stylix
branch: master
- repo: DeterminateSystems/nix-netboot-serve
branch: main
- repo: Gerschtli/nix-formatter-pack
branch: master
- repo: hercules-ci/flake-parts
branch: main
- repo: Mic92/sops-nix
branch: master
- repo: nix-community/home-manager
branch: master
too-big: true
run-on: UbuntuLatest32Cores128G
- repo: nix-community/impermanence
branch: master
- repo: nix-community/naersk
branch: master
- repo: nix-community/nixos-generators
branch: master
- repo: nix-community/poetry2nix
branch: master
- repo: nixified-ai/flake
branch: master
- repo: NixOS/nixpkgs
branch: nixos-unstable
- repo: NixOS/nixos-hardware
branch: master
- repo: numtide/flake-utils
branch: main
- repo: oxalica/rust-overlay
branch: master
- repo: ryantm/nixpkgs-update
branch: main
- repo: zhaofengli/attic
branch: main
# Pulled out of the alpha-sorted list, since they're handled special
# in the rapid, fast-acting update handling.
- repo: NixOS/nixpkgs
branch: nixos-24.05
rolling-minor: 2405
- repo: NixOS/nixpkgs
branch: nixos-24.11
rolling-minor: 2411
- repo: nix-community/home-manager
branch: release-24.05
rolling-minor: 2405
too-big: true
run-on: UbuntuLatest32Cores128G
- repo: nix-community/home-manager
branch: release-24.11
rolling-minor: 2411
too-big: true
run-on: UbuntuLatest32Cores128G
runs-on: ${{ matrix.run-on || 'ubuntu-latest' }}
permissions:
contents: write # In order to upload artifacts to GitHub releases
id-token: write # In order to request a JWT for AWS auth
steps:
- uses: DeterminateSystems/nix-installer-action@main
- uses: DeterminateSystems/magic-nix-cache-action@main
- name: Checkout
uses: actions/checkout@v4
with:
repository: ${{ matrix.repo }}
ref: ${{ matrix.branch }}
- name: Release to FlakeHub
uses: DeterminateSystems/flakehub-push@main
with:
mirror: true
visibility: public
repository: ${{ matrix.repo }}
rolling: true
rolling-minor: ${{ matrix.rolling-minor }}
log-directives: flakehub_push=trace
logger: pretty
my-flake-is-too-big: ${{ matrix.too-big || false }}