Skip to content

Geolab base 1.0.1 - #64

Open
sparafina-earthscope wants to merge 17 commits into
mainfrom
geolab-base-0.2.0
Open

Geolab base 1.0.1#64
sparafina-earthscope wants to merge 17 commits into
mainfrom
geolab-base-0.2.0

Conversation

@sparafina-earthscope

Copy link
Copy Markdown
Contributor

[1.0.1]

Added

  • pin base image to pangeo-base:04bb14b
  • add geolab-base version as ENV GEOLAB_VERSION (must be manually edited)
  • add graphviz package
  • add pygraphviz package
  • add ipycytoscape
  • added tests for new packages

Changed

  • removed test_packages.py
  • moved test_notebook functions to test_helpers.py module to make it easier for users to import when writing tests
  • updated test_notebook.ipynb to use test_helpers functions

@sparafina-earthscope
sparafina-earthscope requested a review from a team as a code owner August 20, 2026 22:02
USE_TIMESTAMP_VERSION was forcing the shared release job to discard
any semantic version entered when manually running the release job,
always substituting a UTC timestamp instead.
Bakes the release version into the image's org.opencontainers.image.version
label via DOCKER_EXTRA_OPTIONS, alongside the existing IMAGE_AUTHORS/PYTHON_VERSION args.
Docker doesn't validate ARG values, so an empty --build-arg or ARG
default would silently bake an empty version label/env into the image.
No default means an omitted --build-arg now fails the guard added
in abbc516 instead of silently baking in a stale version.
Adds a step before building the platform image explaining that
CHANGELOG.md must be updated by hand and that GEOLAB_VERSION is now
required (no default) rather than optional metadata.
@sparafina-earthscope
sparafina-earthscope requested a review from a team as a code owner August 27, 2026 18:28
Surfaces it as an editable field on GitLab's "Run pipeline" page, so
it can be overridden without editing and committing .gitlab-ci.yml
for each release.
No default forces it to be set explicitly on the "Run pipeline" page
for every build; left blank, the Dockerfile guard fails the build
instead of silently baking in a stale version.
Notes that the official image build sets GEOLAB_VERSION on the "Run
pipeline" page rather than via a manual --build-arg, and that it has
no default there either.

@sarahw-earthscope sarahw-earthscope left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple lingering questions

Comment thread geolab-base/Dockerfile
# ──────────────────────────────────────────────────────────────
FROM pangeo/base-image:latest
# Changing this tag is a major (breaking) change under semantic versioning.
FROM pangeo/base-image:04bb14b

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason for pinning to the commit-version and not date-version? If they're the same image content, the date-version might make it easier to track when an update is needed.

Comment thread geolab-base/Dockerfile Outdated
Comment thread geolab-base/README.md
Before building, decide on a version number for the image, following [semantic versioning](https://semver.org/) (e.g. `1.2.0`).

- Update `CHANGELOG.md` with a new entry describing what changed in this version. This must be done by hand — it is not generated automatically from commits or the build.
- Pass the same version to the build with the `GEOLAB_VERSION` build-arg (see below). The Dockerfile has no default for it, so the build fails immediately if it is omitted or empty.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does this play out for folks using this repo as a template? How does this play out for the first stage of the build pipeline that creates the candidate image, before the step where the version number is set in the release cut?

Comment thread geolab-base/README.md

Once your configuration files are ready, you build the image locally *for the GeoLab platform* and push it to a container registry so GeoLab can access it.

### Setting the version and updating the changelog

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add some distinction between ES staff building an image as a formal release (should be in confluence) vs the community using this repo as a template?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants