diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 55be09fb..3c7fecbc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,10 +5,13 @@ on: push: branches: - main - + env: # Required to make some things output color TERM: ansi + REGISTRY: ghcr.io + REPOSITORY: ${{ github.repository }} + TAG: latest jobs: ci: @@ -16,6 +19,10 @@ jobs: runs-on: ubuntu-latest + permissions: + contents: read + packages: write + steps: - name: Sync repository uses: actions/checkout@v4 @@ -44,13 +51,13 @@ jobs: run: nix-env -f "" -i direnv -i nix-direnv - name: Pop/push downloaded crate cache - uses: actions/cache@v4 + uses: actions/cache@v3 with: key: downloaded-crates path: ~/.cargo - name: Pop/push compiled crate cache - uses: actions/cache@v4 + uses: actions/cache@v3 with: key: compiled-crates-${{runner.os}} path: target @@ -63,3 +70,18 @@ jobs: run: | direnv allow direnv exec . engage + + - name: Log in to the Container registry + uses: docker/login-action@v3 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build docker image + run: nix build .#oci-image + + - name: Push docker image to DockerHub + run: | + docker load < result + docker push ${{ env.REPOSITORY }}:${{ env.TAG }} \ No newline at end of file diff --git a/flake.lock b/flake.lock index c33dea45..e8a271b6 100644 --- a/flake.lock +++ b/flake.lock @@ -28,11 +28,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1705126891, - "narHash": "sha256-RnCWzRghSpyxKs3kXgYPkZv6TvzV3Pmve1je6RQHe1o=", + "lastModified": 1705559032, + "narHash": "sha256-Cb+Jd1+Gz4Wi+8elPnUIHnqQmE1qjDRZ+PsJaPaAffY=", "owner": "nix-community", "repo": "fenix", - "rev": "89a02ff13d98d54f0b3b41f9b8326eb26d7cdc2e", + "rev": "e132ea0eb0c799a2109a91688e499d7bf4962801", "type": "github" }, "original": { @@ -46,11 +46,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -61,11 +61,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1704722960, - "narHash": "sha256-mKGJ3sPsT6//s+Knglai5YflJUF2DGj7Ai6Ynopz0kI=", + "lastModified": 1705316053, + "narHash": "sha256-J2Ey5mPFT8gdfL2XC0JTZvKaBw/b2pnyudEXFvl+dQM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "317484b1ead87b9c1b8ac5261a8d2dd748a0492d", + "rev": "c3e128f3c0ecc1fb04aef9f72b3dcc2f6cecf370", "type": "github" }, "original": { @@ -86,11 +86,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1704974004, - "narHash": "sha256-H3RdtMxH8moTInVmracgtF8bgFpaEE3zYoSkuv7PBs0=", + "lastModified": 1705523001, + "narHash": "sha256-TWq5vJ6m+9HGSDMsQAmz1TMegMi79R3TTyKjnPWsQp8=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "9d8889cdfcc3aa0302353fc988ed21ff9bc9925c", + "rev": "9d9b34354d2f13e33568c9c55b226dd014a146a0", "type": "github" }, "original": {