refactor: scripts to apps

This commit is contained in:
trev 2025-04-17 22:00:23 -04:00
parent 24d3067e52
commit ad9ac18c18
4 changed files with 57 additions and 41 deletions

View File

@ -28,13 +28,9 @@ jobs:
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
- name: Install NPM Packages
working-directory: ./client
run: npm i && npm ci # https://github.com/npm/cli/issues/7793
- name: Update
run: nix develop --command trevstack-update
run: nix run .#update
- name: Create Pull Request
uses: peter-evans/create-pull-request@v7

View File

@ -7,13 +7,13 @@ next_version=$(echo "${version}" | awk -F. -v OFS=. '{$NF += 1 ; print}')
echo "bumping client"
cd "${git_root}/client"
npm version "${next_version}" && npm i
npm version "${next_version}"
git add package-lock.json
git add package.json
echo "bumping nix"
cd "${git_root}"
nix-update --flake --version "${next_version}" --subpackage trevstack-client trevstack
nix-update --flake --version "${next_version}" --subpackage client default
git add flake.nix
git commit -m "bump: v${version} -> v${next_version}"

View File

@ -35,7 +35,7 @@ fi
if [ "${updated}" = true ]; then
echo "updating nix hashes"
cd "${git_root}"
nix-update --flake --version=skip --subpackage trevstack-client trevstack
nix-update --flake --version=skip --subpackage client default
git add flake.nix
git commit -m "build(nix): updated nix hashes"
else

View File

@ -79,43 +79,33 @@
};
in {
default = pkgs.mkShell {
packages = with pkgs;
[
git
nix-update
treli.packages."${system}".default
packages = with pkgs; [
git
nix-update
treli.packages."${system}".default
# Server
go
gotools
gopls
revive
sqlc
# Server
go
gotools
gopls
revive
sqlc
# database
sqlite
dbmate
sqlfluff
# database
sqlite
dbmate
sqlfluff
# Protobuf
buf
protoc-gen-go
protoc-gen-connect-go
protoc-gen-es
protoc-gen-connect-openapi
# Protobuf
buf
protoc-gen-go
protoc-gen-connect-go
protoc-gen-es
protoc-gen-connect-openapi
# Client
nodejs_22
]
# Use .scripts
++ map (
x: (
pkgs.writeShellApplication {
name = "${pname}-${(lib.nameFromURL (baseNameOf x) ".")}";
text = builtins.readFile x;
}
)
) (pkgs.lib.filesystem.listFilesRecursive ./.scripts);
# Client
nodejs_22
];
};
});
@ -173,6 +163,36 @@
'';
});
apps = forSystem ({pkgs, ...}: {
update = {
type = "app";
program = pkgs.lib.getExe pkgs.writeShellApplication {
name = "update";
runtimeInputs = with pkgs; [
git
nix
nodejs_22
go
nix-update
];
text = builtins.readFile ./.scripts/update.sh;
};
};
bump = {
type = "app";
program = pkgs.lib.getExe pkgs.writeShellApplication {
name = "bump";
runtimeInputs = with pkgs; [
git
nodejs_22
nix-update
];
text = builtins.readFile ./.scripts/bump.sh;
};
};
});
formatter = forSystem ({pkgs, ...}: pkgs.alejandra);
packages = forSystem (