name: build configuration on: pull_request: types: [opened, synchronize, edited, reopened] branches: - main push: branches: - main jobs: build_compute01: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build compute01 run: | # Enter the shell nix-shell --run 'colmena build --on compute01' build_storage01: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build storage01 run: | # Enter the shell nix-shell --run 'colmena build --on storage01' build_vault01: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build vault01 run: | # Enter the shell nix-shell --run 'colmena build --on vault01' build_web01: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build web01 run: | # Enter the shell nix-shell --run 'colmena build --on web01' build_web02: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build web02 run: | # Enter the shell nix-shell --run 'colmena build --on web02' build_rescue01: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build rescue01 run: | # Enter the shell nix-shell --run 'colmena build --on rescue01' build_geo01: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build geo01 run: | # Enter the shell nix-shell --run 'colmena build --on geo01' build_geo02: runs-on: nix steps: - uses: actions/checkout@v3 - name: Build geo02 run: | # Enter the shell nix-shell --run 'colmena build --on geo02' push_to_cache_compute01: runs-on: nix needs: - build_compute01 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "compute01" ]' - uses: actions/upload-artifact@v3 if: always() with: name: outputs_compute01 path: uploaded.txt push_to_cache_storage01: runs-on: nix needs: - build_storage01 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "storage01" ]' - uses: actions/upload-artifact@v3 if: always() with: name: outputs_storage01 path: uploaded.txt push_to_cache_rescue01: runs-on: nix needs: - build_rescue01 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "rescue01" ]' push_to_cache_geo01: runs-on: nix needs: - build_geo01 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "geo01" ]' push_to_cache_geo02: runs-on: nix needs: - build_geo02 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "geo02" ]' push_to_cache_web01: runs-on: nix needs: - build_web01 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "web01" ]' push_to_cache_web02: runs-on: nix needs: - build_web02 steps: - uses: actions/checkout@v3 - name: Push to cache run: nix-shell --run push-to-nix-cache env: STORE_ENDPOINT: "https://tvix-store.dgnum.eu/infra-signing/" STORE_USER: "admin" STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }} NODES: '[ "web02" ]'