Skip to content

Commit

Permalink
Release 0.2.0
Browse files Browse the repository at this point in the history
This is release 0.2.0, the first stable release of Colmena!

---

Colmena is a simple, stateless NixOS deployment tool modeled
after NixOps and morph. In particular, it is built from the
ground up to support parallelization of the steps in the
deployment process.

This release contains the following features:

- Node Tagging
- Local Deployment
- Secrets
- Ad Hoc Evaluation
- Nix Flakes Support
- Parallelism

We now have a User Manual at <https://zhaofengli.github.io/colmena/0.2>
containing tutorials, sample configurations as well as a
complete listing of supported deployment options.

Signed-off-by: Zhaofeng Li <[email protected]>
  • Loading branch information
zhaofengli committed Nov 18, 2021
1 parent 65a8cd5 commit dd66ce3
Show file tree
Hide file tree
Showing 4 changed files with 74 additions and 7 deletions.
62 changes: 62 additions & 0 deletions .github/workflows/manual-stable.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Manual (Stable)

on:
push:
branches:
- release-0.2.x
jobs:
deploy:
env:
LATEST_STABLE_API: 0.2

runs-on: ubuntu-latest

steps:
- uses: actions/[email protected]
- uses: cachix/install-nix-action@v15
with:
install_url: https://releases.nixos.org/nix/nix-2.4/install
extra_nix_config: |
experimental-features = nix-command flakes
- uses: cachix/cachix-action@v10
with:
name: colmena
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'

- name: Check API version
run: echo "api_version=$(nix eval .#colmena.apiVersion)" >> $GITHUB_ENV

# == Manual
- name: Build manual
run: nix build -o out .#manual -L

# Ugly hack so it has permission to delete the worktree afterwards
- name: Copy manual
run: cp --no-preserve=mode -r out/ public/

- name: Deploy manual
uses: JamesIves/[email protected]
with:
branch: gh-pages
folder: public
target-folder: '${{ env.api_version }}'

# == Redirect Farm for Latest Stable
# /stable -> /api_version

- name: Build redirect farm
run: nix build -o out .#manual.redirectFarm -L
if: ${{ env.api_version == env.LATEST_STABLE_API }}

# Ugly hack so it has permission to delete the worktree afterwards
- name: Copy redirect farm
run: cp --no-preserve=mode -r out-redirectFarm/ redirect-farm/
if: ${{ success() }}

- name: Deploy redirect farm
uses: JamesIves/[email protected]
with:
branch: gh-pages
folder: redirect-farm
target-folder: stable
if: ${{ success() }}
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "colmena"
version = "0.2.0-pre"
version = "0.2.0"
authors = ["Zhaofeng Li <[email protected]>"]
edition = "2018"

Expand Down
15 changes: 10 additions & 5 deletions default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,10 @@ let
in {
pkgs ? lockedPkgs,
}: let
lib = pkgs.lib;
stdenv = pkgs.stdenv;
rustPlatform = pkgs.rustPlatform;
inherit (pkgs) lib stdenv rustPlatform;
in rustPlatform.buildRustPackage rec {
pname = "colmena";
version = "0.2.0-pre";
version = "0.2.0";

# We guarantee CLI and Nix API stability for the same minor version
apiVersion = builtins.concatStringsSep "." (lib.take 2 (lib.splitString "." version));
Expand All @@ -22,7 +20,7 @@ in rustPlatform.buildRustPackage rec {
src = lib.cleanSource ./.;
};

cargoSha256 = "sha256-IiAJ+sQasimcn4nSv4ACBwP1NLGNArtcIbwzkx0v/7w=";
cargoSha256 = "sha256-ZNSg3hXWKHNQ9yHJS1qW3tFYwzU4ZDa1N0yvoGLmWns=";

postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) ''
mkdir completions
Expand All @@ -38,4 +36,11 @@ in rustPlatform.buildRustPackage rec {

# Recursive Nix is not stable yet
doCheck = false;

meta = with lib; {
description = "A simple, stateless NixOS deployment tool";
homepage = "https://zhaofengli.github.io/colmena/${apiVersion}";
license = licenses.mit;
maintainers = with maintainers; [ zhaofengli ];
};
}

0 comments on commit dd66ce3

Please sign in to comment.