Skip to content

Commit

Permalink
chore: Prepare for the v0.9.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
gmpinder committed Dec 3, 2024
1 parent cb4acba commit e8e7876
Show file tree
Hide file tree
Showing 9 changed files with 23 additions and 294 deletions.
19 changes: 18 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,24 @@ users.workspace = true

[features]
# Top level features
default = []
default = [
"v0_9_0"
]

# v0.9.0 features
v0_9_0 = [
"init",
"stages",
"copy",
"iso",
"switch",
"login",
"validate",
"sigstore",
"multi-recipe",
"prune",
"rechunk",
]
init = []
stages = ["blue-build-recipe/stages"]
copy = ["blue-build-recipe/copy"]
Expand Down
12 changes: 0 additions & 12 deletions integration-tests/Earthfile
Original file line number Diff line number Diff line change
Expand Up @@ -62,18 +62,6 @@ build-full:
RUN --secret BB_PASSWORD=github/registry bluebuild build --push -S sigstore -vv recipes/recipe.yml
END


rebase:
FROM +legacy-base

RUN --no-cache bluebuild -v rebase config/recipe.yml

upgrade:
FROM +legacy-base

RUN mkdir -p /etc/bluebuild && touch $BB_TEST_LOCAL_IMAGE
RUN --no-cache bluebuild -v upgrade config/recipe.yml

switch:
FROM +test-base

Expand Down
19 changes: 0 additions & 19 deletions scripts/exports.sh
Original file line number Diff line number Diff line change
@@ -1,23 +1,5 @@
#!/usr/bin/env bash

# Function to retrieve module configs and populate an array
# Arguments:
# 1. Variable name to store result
# 2. jq query
# 3. Module config content
get_yaml_array() {
local -n arr="${1}"
local jq_query="${2}"
local module_config="${3}"

if [[ -z "${jq_query}" || -z "${module_config}" ]]; then
echo "Usage: get_yaml_array VARIABLE_TO_STORE_RESULTS JQ_QUERY MODULE_CONFIG" >&2
return 1
fi

readarray -t arr < <(echo "${module_config}" | yq -I=0 "${jq_query}")
}

# Function to retrieve module configs and populate an array
# Arguments:
# 1. Variable name to store result
Expand Down Expand Up @@ -67,7 +49,6 @@ export OS_VERSION="$(grep -Po "(?<=VERSION_ID=)\d+" /usr/lib/os-release)"
export OS_ARCH="$(uname -m)"

# Export functions for use in sub-shells or sourced scripts
export -f get_yaml_array
export -f get_json_array

mkdir -p /var/roothome /var/opt /var/lib/alternatives /var/opt /var/usrlocal
1 change: 0 additions & 1 deletion scripts/setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,3 @@ if [ -f /etc/os-release ]; then
echo "OS not detected, proceeding without setup"
fi
fi
cp /tmp/bins/yq /usr/bin/
6 changes: 0 additions & 6 deletions src/bin/bluebuild.rs
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,6 @@ fn main() {
#[cfg(feature = "switch")]
CommandArgs::Switch(mut command) => command.run(),

#[cfg(not(feature = "switch"))]
CommandArgs::Rebase(mut command) => command.run(),

#[cfg(not(feature = "switch"))]
CommandArgs::Upgrade(mut command) => command.run(),

#[cfg(feature = "login")]
CommandArgs::Login(mut command) => command.run(),

Expand Down
32 changes: 5 additions & 27 deletions src/commands.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@ pub mod generate;
pub mod generate_iso;
#[cfg(feature = "init")]
pub mod init;
#[cfg(not(feature = "switch"))]
pub mod local;
#[cfg(feature = "login")]
pub mod login;
#[cfg(feature = "prune")]
Expand Down Expand Up @@ -78,31 +76,6 @@ pub enum CommandArgs {
#[cfg(feature = "iso")]
GenerateIso(generate_iso::GenerateIsoCommand),

/// Upgrade your current OS with the
/// local image saved at `/etc/bluebuild/`.
///
/// This requires having rebased already onto
/// a local archive already by using the `rebase`
/// subcommand.
///
/// NOTE: This can only be used if you have `rpm-ostree`
/// installed. This image will not be signed.
#[command(visible_alias("update"))]
#[cfg(not(feature = "switch"))]
Upgrade(local::UpgradeCommand),

/// Rebase your current OS onto the image
/// being built.
///
/// This will create a tarball of your image at
/// `/etc/bluebuild/` and invoke `rpm-ostree` to
/// rebase onto the image using `oci-archive`.
///
/// NOTE: This can only be used if you have `rpm-ostree`
/// installed. This image will not be signed.
#[cfg(not(feature = "switch"))]
Rebase(local::RebaseCommand),

/// Switch your current OS onto the image
/// being built.
///
Expand All @@ -113,6 +86,11 @@ pub enum CommandArgs {
/// NOTE: This can only be used if you have `rpm-ostree`
/// installed. This image will not be signed.
#[cfg(feature = "switch")]
#[command(
visible_alias("update"),
visible_alias("upgrade"),
visible_alias("rebase")
)]
Switch(switch::SwitchCommand),

/// Login to all services used for building.
Expand Down
223 changes: 0 additions & 223 deletions src/commands/local.rs

This file was deleted.

4 changes: 0 additions & 4 deletions template/templates/modules/copy/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,6 @@
Only compiler-based builds can use this module as it is built-in to the BlueBuild CLI tool.
:::

:::note
**NOTE:** This module is currently only available with the `use_unstable_cli` option on the GHA or using the `main` image.
:::

The `copy` module is a short-hand method of adding a [`COPY`](https://docs.docker.com/reference/dockerfile/#copy) instruction into the image. This can be used to copy files from images, other stages, or even from the build context.

## Usage
Expand Down
1 change: 0 additions & 1 deletion template/templates/stages.j2
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ COPY ./modules /modules
# can be added to the ostree commits.
FROM scratch AS stage-bins
COPY --from=gcr.io/projectsigstore/cosign /ko-app/cosign /bins/cosign
COPY --from=docker.io/mikefarah/yq /usr/bin/yq /bins/yq
COPY --from=ghcr.io/blue-build/cli:
{%- if let Some(tag) = recipe.blue_build_tag -%}
{{ tag }}
Expand Down

0 comments on commit e8e7876

Please sign in to comment.