diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..d4dc78b --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,53 @@ +cff-version: 1.2.0 +title: Virtual Stores Feasibility Report +message: >- + If you use or reference this report, please cite it using the + metadata in this file. +type: report +authors: + - given-names: Aimee + family-names: Barciauskas + - given-names: Ed + family-names: Armstrong + - given-names: Amy + family-names: Steiker + - given-names: Owen + family-names: Littlejohns + - given-names: Daniel + family-names: Kaufman + - given-names: Chris + family-names: Battisto + - given-names: Hailiang + family-names: Zhang + - given-names: Christine + family-names: Smit + - given-names: Jack + family-names: McNelis + - given-names: Luis + family-names: Lopez + - given-names: Joseph H. + family-names: Kennedy + - given-names: Kim + family-names: Fairbanks +repository-code: >- + https://github.com/NASA-IMPACT/virtual-stores-feasibility-report +url: https://github.com/NASA-IMPACT/virtual-stores-feasibility-report +abstract: >- + A feasibility report on virtual stores at NASA: lightweight + metadata that provides a single entrypoint to datasets comprised + of many files, enabling analysis-ready access without downloading, + scanning, or pre-processing. +keywords: + - NASA + - virtual stores + - virtual zarr + - cloud-optimized data + - analysis-ready data +license: CC-BY-4.0 +version: 2026.04.0 +date-released: '2026-04-15' +# After the first Zenodo archive, add the concept DOI here: +identifiers: + - type: doi + value: 10.5281/zenodo.XXXXXXX + description: Concept DOI (always resolves to the latest version) diff --git a/_quarto.yml b/_quarto.yml index ce710d9..83599fa 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -39,7 +39,7 @@ website: - href: resources.qmd text: Resources, References and Presentations - href: contributing.qmd - text: Contributing + text: Contributing format: html: diff --git a/contributing.qmd b/contributing.qmd index a5556e7..c4b179e 100644 --- a/contributing.qmd +++ b/contributing.qmd @@ -19,6 +19,50 @@ To add a new page: To preview changes, you can run this site locally (see instructions to setup quarto locally below) or use the automated preview generation when opening a PR (see [the PR preview workflow](./.github/workflows/pr-preview.yml)). +## Release Process + +Releases mark citable snapshots of the report. Not every merged PR needs a release — cut one when there is a meaningful body of new or revised content. + +We use [calendar versioning (CalVer)](https://calver.org/) in the form `YYYY.MM.MICRO` — the year and month the release is published, plus a micro segment that increments within a month, starting at `0` (e.g., `2026.04.0`). The first release in a given month is `.0`; a second release that same month is `.1`, and so on. Keeping all three segments makes every version the same shape, which sorts and parses predictably. + +### Steps to create a release + +1. **Decide on a version number.** Use `YYYY.MM.MICRO` for the current year and month. Set `MICRO` to `0` for the first release of the month, or the next number up if that month already has a release (e.g., `2026.06.0`, then `2026.06.1`). + +2. **Update `releases.md`.** Add an entry at the top of the list with the version, date, and a short summary of what changed. + +3. **Update `CITATION.cff`.** Set `version` to the new version and `date-released` to the publication date (`YYYY-MM-DD`). After the Zenodo DOI is minted (see below), keep the concept DOI in place — it always resolves to the latest version. + +4. **Open and merge a PR** with the `releases.md` and `CITATION.cff` updates. The site will be published automatically on merge to `main`. + +5. **Create a GitHub Release.** Go to [Releases → Draft a new release](https://github.com/NASA-IMPACT/virtual-stores-feasibility-report/releases/new): + - Set the tag to match the version (e.g., `2026.06.0`), targeting the `main` branch. + - Use the version as the title (e.g., `2026.06.0`). + - Copy the summary from `releases.md` into the release notes. + - Publish the release. + +6. **Archive on Zenodo.** If the Zenodo integration is enabled (see [Citing this report](#citing-this-report)), publishing the GitHub Release automatically creates a new Zenodo version and mints a DOI. + +## Citing this report + +This repository includes a [`CITATION.cff`](https://citation-file-format.github.io/) file describing how to cite the report. GitHub renders a "Cite this repository" button from it, and tools like Zenodo read it when archiving. + +### Setting up Zenodo archiving (one-time) + +Archiving on [Zenodo](https://zenodo.org/) gives the report a permanent, citable DOI. Do this once, then every GitHub Release is archived automatically. + +1. Sign in to [Zenodo](https://zenodo.org/) with GitHub (the account must have admin access to the repository, or ask an org admin to do this). +2. Go to your Zenodo profile → **GitHub** (). +3. Find `NASA-IMPACT/virtual-stores-feasibility-report` in the repository list and flip the toggle **On**. (If it isn't listed, click **Sync** to refresh from GitHub.) +4. Create a GitHub Release (or re-publish the existing one). Zenodo will detect it, archive the tagged snapshot, and mint a DOI. + +Zenodo issues two DOIs: + +- A **concept DOI** that always points to the latest version — use this one in `CITATION.cff` and for general citation. +- A **version DOI** unique to each release. + +After the first archive, copy the concept DOI into the `identifiers` section of `CITATION.cff` and add a DOI badge to the `README.md`. Zenodo's [GitHub integration guide](https://help.zenodo.org/docs/profile/linking-accounts/#github) has full details. + ## Local Development ### Install Quarto