Shared GitHub configuration for the IEEE-TAMU organization.
Reusable workflow for building and publishing Docker images from a Dockerfile to GHCR.
Inputs:
| Input | Required | Description |
|---|---|---|
image-name |
yes | Docker image name (e.g. docs, portal, discord-bot) |
Usage:
jobs:
publish:
uses: IEEE-TAMU/.github/.github/workflows/docker-publish.yaml@master
with:
image-name: my-app
GITHUB_TOKENis automatically available in reusable workflows — nosecrets: inheritneeded unless you use custom secrets.
Used by: docs, portal, discord
Reusable workflow for building and publishing Docker images from a Nix flake to GHCR.
Inputs:
| Input | Required | Default | Description |
|---|---|---|---|
image-name |
yes | — | Docker image name (must match name set in the Nix flake's dockerTools call) |
flake-attr |
no | packages.x86_64-linux.docker |
Nix flake attribute path to build |
stream |
no | true |
true if the flake uses streamLayeredImage, false if it uses layeredImage |
Usage:
jobs:
publish:
uses: IEEE-TAMU/.github/.github/workflows/nix-docker-publish.yaml@master
with:
image-name: my-app
GITHUB_TOKENis automatically available in reusable workflows — nosecrets: inheritneeded unless you use custom secrets.
Used by: homepage
Flake example (streamLayeredImage, stream: true):
packages.docker = pkgs.dockerTools.streamLayeredImage {
name = "my-app";
tag = "latest";
contents = [ ... ];
config = { ... };
};Flake example (layeredImage, stream: false):
packages.docker = pkgs.dockerTools.layeredImage {
name = "my-app";
tag = "latest";
contents = [ ... ];
config = { ... };
};