Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New version and changelog #660

Merged
merged 13 commits into from
Oct 24, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ If there is a field which you are unsure about, enter the edit mode of this desc

## 1. Description / Summary

Updates PR template to this one.
_Add a summary of the changes in this PR and the related issue._

## 2. Jira task / GitHub issue

X
_Link to the github issue or add the Jira task ID here._

## 3. Type of change

Expand All @@ -29,7 +29,7 @@ What _type of change(s)_ does the PR contain?
- [ ] Bug fix <!-- Should be checked when a bug is fixed in existing functionality. If the bug fix also is a breaking change (see above), add info about that beside this check box. -->
- [ ] Security Alert fix <!-- Should be checked if the PR attempts to solve a security vulnerability, e.g. reported by the "Security" tab in the repo. -->
- [ ] Documentation <!-- Should be checked if the PR adds or updates the CLI documentation -- anything in docs/ directory. -->
- [x] Workflow <!-- Should be checked if the PR includes a change in e.g. the github actions files (dds_cli/.github/*) or another type of workflow change. Anything that alters our or the codes workflow. -->
- [ ] Workflow <!-- Should be checked if the PR includes a change in e.g. the github actions files (dds_cli/.github/*) or another type of workflow change. Anything that alters our or the codes workflow. -->
- [ ] Tests **only** <!-- Should only be checked if the PR only contains tests, none of the other types of changes listed above. -->

## 4. Additional information
Expand All @@ -38,7 +38,7 @@ What _type of change(s)_ does the PR contain?
- [ ] Blocking PRs <!-- Should be checked if there are blocking PRs or other tasks that need to be merged prior to this. Add link to PR or Jira card if this is the case. -->
- [ ] Merged <!-- Should be checked if the "Blocking PRs" box was checked AND all blocking PRs have been merged / fixed. -->
- [ ] PR to `master` branch: _If checked, read [the release instructions](https://github.com/ScilifelabDataCentre/dds_cli/blob/dev/docs/procedures/new_release.md)_ <!-- Check this if the PR is made to the `master` branch. Only the `dev` branch should be doing this. -->
- [ ] I have followed steps 1-7. <!-- Should be checked if the "PR to `master` branch" box is checked AND the specified steps in the release instructions have been followed. -->
- [ ] I have followed steps 1-8. <!-- Should be checked if the "PR to `master` branch" box is checked AND the specified steps in the release instructions have been followed. -->

## 5. Actions / Scans

Expand Down
9 changes: 9 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
Changelog
==========

.. _2.5.2:

2.5.2 - 2023-10-25
~~~~~~~~~~~~~~~~~~~

- Updated command: `dds project status delete/archive` now prints project information and asks for confirmation from user.
- "Checksum verification successful" is not printed when file integrity is verified (unless `-v` option is used); Only prints if there is an error.
- New command `dds project status extend`: Unit Admins / Personnel can extend the project deadline prior to the project expiring.

.. _2.5.1:

2.5.1 - 2023-09-25
Expand Down
9 changes: 5 additions & 4 deletions SPRINTLOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -300,10 +300,11 @@ _Nothing merged in CLI during this sprint_

# 2023-09-18 - 2023-09-29

- GitHub Actions to generate the documentation fixed ([#1473])(https://scilifelab.atlassian.net/jira/software/projects/DDS/boards/13?selectedIssue=DDS-1473)
- Print project information and ask user for confirmation when deleting or archiving projects ([#1401])(https://scilifelab.atlassian.net/jira/software/projects/DDS/boards/13?selectedIssue=DDS-1401)
- GitHub Actions to generate the documentation fixed ([#650](https://github.com/ScilifelabDataCentre/dds_cli/pull/650))
- Print project information and ask user for confirmation when deleting or archiving projects ([#655](https://github.com/ScilifelabDataCentre/dds_cli/pull/655))

# 2023-10-16 - 2023-10-27

- Change "Checksum verification successful. File integrity verified." logging level from INFO to DEBUG in order to not print for all files ([#662])(https://github.com/ScilifelabDataCentre/dds_cli/pull/662)
- New command `dds project status extend` to allow extension of project deadline ([#661])(https://github.com/ScilifelabDataCentre/dds_cli/pull/661)
- Change "Checksum verification successful. File integrity verified." logging level from INFO to DEBUG in order to not print for all files ([#662](https://github.com/ScilifelabDataCentre/dds_cli/pull/662)
- New command `dds project status extend` to allow extension of project deadline ([#661](https://github.com/ScilifelabDataCentre/dds_cli/pull/661)
- New version: 2.5.2 ([#660](https://github.com/ScilifelabDataCentre/dds_cli/pull/660))
2 changes: 1 addition & 1 deletion dds_cli/version.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""DDS CLI version."""

__version__ = "2.5.1"
__version__ = "2.5.2"
47 changes: 25 additions & 22 deletions docs/procedures/new_release.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,27 @@
# How to create a new release

1. Fork a new branch from `dev`
2. Update the version [changelog](../../CHANGELOG.rst)
1. Create a PR from `dev` to `master`: "New release". Use this for step 3.
2. Fork a new branch from `dev`: "New version & changelog"
3. Update the version [changelog](../../CHANGELOG.rst) located at `dds_cli/CHANGELOG.rst`

**Tip:** Use the PR to `master` (step 1) to see all changes since last release.

- The new version should be at the top of the page
- List the changes that the users will / may notice
- Do not add information regarding workflow (e.g. GitHub Actions) etc

3. Update the version in [`version.py`](../../dds_cli/version.py)
4. Update the version in [`version.py`](../../dds_cli/version.py)

- _Minor changes, e.g. bug fix_: Minor version upgrade, e.g. `1.0.1 --> 1.0.2`
- _Small changes, e.g. new feature_: Mid version upgrade, e.g. `1.1.0 --> 1.2.0`
- _Breaking changes or large new feature(s)_: Major version upgrade, e.g. `1.0.0 --> 2.0.0`
- _Breaking changes or large new feature(s)_: Major version upgrade, e.g. `1.0.0 --> 2.0.0` _SHOULD NEVER BE DONE UNLESS THE API ALSO HAS THIS IDENTICAL CHANGE._

> Will break if Web / API version not bumped as well

4. Push changelog and version change to branch
5. Run the `rich-codex` action [here](https://github.com/ScilifelabDataCentre/dds_cli/actions/workflows/rich-codex-cli.yml); Choose your current branch where it says "Run workflow"
5. Push changelog and version change to branch
6. Run the `rich-codex` action [here](https://github.com/ScilifelabDataCentre/dds_cli/actions/workflows/rich-codex-cli.yml); Choose your current branch where it says "Run workflow"
- `rich-codex` will push changes to your branch; these commits _will not be signed_
- In order for you to merge these changes into the `dev`/`master` branch, all commits need to be signed:
- In order for you to merge these changes into the `dev` branch, all commits need to be signed:
1. Pull the changes to your local branch
2. Run the following command:
```bash
Expand All @@ -29,10 +32,10 @@
```bash
git push --force
```
6. Create a new PR from `<your-branch>` to `dev`
7. Create a new PR from `<your-branch>` to `dev`
1. Verify that the new code example images look ok
2. Wait for approval and merge by Product Owner or admin
7. Create a PR from `dev` to `master`
8. Create a PR from `dev` to `master`

- Are you bumping the major version (e.g. 1.x.x to 2.x.x)?
- Yes: Add this info to the PR.
Expand All @@ -48,7 +51,7 @@

> Documentation changes are automatically updated on GitHub pages when there's a push to `master`. However, in order to keep things consistent and to avoid confusion with the versions, always release a new version when changes are pushed to `master` (assuming all the changes have been verified)

8. [Draft a new release](https://github.com/ScilifelabDataCentre/dds_cli/releases)
9. [Draft a new release](https://github.com/ScilifelabDataCentre/dds_cli/releases)

1. `Choose a tag` &rarr; `Find or create a new tag` &rarr; Fill in the new version, e.g. if the new version is `1.0.0`, you should fill in `v1.0.0`.
2. `Target` should be set to `master`
Expand All @@ -61,25 +64,25 @@

A new version of the CLI will be published to [PyPi](https://pypi.org/project/dds-cli/)

9. Verify that the new CLI version is updated on Uppmax
10. Verify that the new CLI version is updated on Uppmax

Uppmax automatically upgrades the `dds-cli` version every day at midnight. Double-check that this has worked, if you have an Uppmax account.
Uppmax automatically upgrades the `dds-cli` version every day at midnight. Double-check that this has worked, if you have an Uppmax account.

If there has been a major version change though and the CLI contains breaking changes, _Uppmax should be notified well in advance_ in order to plan for an upgrade at a specific time so that the users are blocked (automatic functionality in dds_web) for as short time as possible.
If there has been a major version change though and the CLI contains breaking changes, _Uppmax should be notified well in advance_ in order to plan for an upgrade at a specific time so that the users are blocked (automatic functionality in dds_web) for as short time as possible.

```
[Recipient]: [email protected]
[Subject]: (Pavlin Mitev) Upgrade dds-cli module
```
[Recipient]: [email protected]
[Subject]: (Pavlin Mitev) Upgrade dds-cli module

[Message]:
Hi,
[Message]:
Hi,

We will be releasing a new major version of the dds-cli on <Day Date Time>. The changes are breaking - would it be possible for you do a manual version upgrade at that time, so that the users don't experience issues?
We will be releasing a new major version of the dds-cli on <Day Date Time>. The changes are breaking - would it be possible for you do a manual version upgrade at that time, so that the users don't experience issues?

Thank you in advance!
```
Thank you in advance!
```

10. Inform users that there is a new version by adding a Message of the Day: `dds motd add`
11. Inform users that there is a new version by adding a Message of the Day: `dds motd add`

- If users do not upgrade the CLI when there is a new version, they may experience issues and errors.
- If there is a major version mismatch between the API and CLI (e.g. API version 1.0.0 and CLI version 2.0.0 or vice versa), the DDS will inform the users that they are blocked from using the DDS until they have upgraded.
Expand Down
Loading
Loading