Skip to content

Commit

Permalink
Cookie updated by NetworkToCode Cookie Drift Manager Tool (#52)
Browse files Browse the repository at this point in the history
* Cookie updated by NetworkToCode Cookie Drift Manager Tool

Template:

```
{
    "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git",
    "dir": "nautobot-app",
    "ref": "refs/tags/nautobot-app-v2.4.0",
    "path": null
}
```

Cookie:

```
{
    "remote": "https://github.com/nautobot/nautobot-app-dev-example.git",
    "path": "/tmp/tmp95bqi6a6/nautobot-app-dev-example",
    "repository_path": "/tmp/tmp95bqi6a6/nautobot-app-dev-example",
    "dir": "",
    "branch_prefix": "drift-manager",
    "context": {
        "codeowner_github_usernames": "@nautobot/maintain-nautobot-apps",
        "full_name": "Network to Code, LLC",
        "email": "[email protected]",
        "github_org": "nautobot",
        "app_name": "nautobot_dev_example",
        "verbose_name": "Nautobot Dev Example App",
        "app_slug": "nautobot-dev-example",
        "project_slug": "nautobot-app-dev-example",
        "repo_url": "https://github.com/nautobot/nautobot-app-dev-example",
        "base_url": "dev-example",
        "min_nautobot_version": "2.0.0",
        "max_nautobot_version": "2.9999",
        "camel_name": "NautobotDevExample",
        "project_short_description": "Nautobot App to demonstrate how to create a Nautobot App.",
        "model_class_name": "DevExample",
        "open_source_license": "Apache-2.0",
        "docs_base_url": "https://docs.nautobot.com",
        "docs_app_url": "https://docs.nautobot.com/projects/dev-example/en/latest",
        "_template": "https://github.com/nautobot/cookiecutter-nautobot-app.git",
        "_output_dir": "/tmp/tmp95bqi6a6",
        "_repo_dir": "/github/home/.cookiecutters/cookiecutter-nautobot-app/nautobot-app",
        "_checkout": "refs/tags/nautobot-app-v2.4.0"
    },
    "base_branch": "develop",
    "remote_name": "origin",
    "pull_request_strategy": "PullRequestStrategy.CREATE",
    "post_actions": [
        "PostAction.RUFF",
        "PostAction.POETRY"
    ],
    "baked_commit_ref": "4e8834985e615dd01507c3c7b10b0cb5ea24b89f",
    "draft": false
}
```

CLI Arguments:

```
{
    "cookie_dir": "",
    "input": false,
    "json_filename": "",
    "output_dir": "",
    "push": true,
    "template": "",
    "template_dir": "",
    "template_ref": "refs/tags/nautobot-app-v2.4.0",
    "pull_request": null,
    "post_action": [
        "ruff",
        "poetry"
    ],
    "disable_post_actions": true,
    "draft": false
}
```

* fix bad merge

---------

Co-authored-by: bakebot <[email protected]>
Co-authored-by: Gary Snider <[email protected]>
  • Loading branch information
3 people authored Oct 15, 2024
1 parent 5cbd05a commit 1c7e796
Show file tree
Hide file tree
Showing 9 changed files with 204 additions and 152 deletions.
7 changes: 4 additions & 3 deletions .cookiecutter.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,16 @@
"_drift_manager": {
"template": "https://github.com/nautobot/cookiecutter-nautobot-app.git",
"template_dir": "nautobot-app",
"template_ref": "refs/tags/nautobot-app-v2.3.2",
"template_ref": "refs/tags/nautobot-app-v2.4.0",
"cookie_dir": "",
"branch_prefix": "drift-manager",
"pull_request_strategy": "create",
"post_actions": [
"black"
"ruff",
"poetry"
],
"draft": false,
"baked_commit_ref": "4e8834985e615dd01507c3c7b10b0cb5ea24b89f"
"baked_commit_ref": "9e0f9a4771b5689b714de8313cff9c65a4cab611"
}
}
}
1 change: 1 addition & 0 deletions changes/+nautobot-app-v2.4.0.housekeeping
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Rebaked from the cookie `nautobot-app-v2.4.0`.
15 changes: 15 additions & 0 deletions development/towncrier_template.j2
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,17 @@ This document describes all new features and changes in the release. The format
- Major features or milestones
- Changes to compatibility with Nautobot and/or other apps, libraries etc.

# v{{ versiondata.version.split(".")[:2] | join(".") }} Release Notes

This document describes all new features and changes in the release. The format is based on [Keep a
Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic
Versioning](https://semver.org/spec/v2.0.0.html).

## Release Overview

- Major features or milestones
- Changes to compatibility with Nautobot and/or other apps, libraries etc.

{% if render_title %}
## [v{{ versiondata.version }} ({{ versiondata.date }})](https://github.com/nautobot/nautobot-app-dev-example/releases/tag/v{{ versiondata.version}})

Expand All @@ -20,7 +31,11 @@ This document describes all new features and changes in the release. The format
{% if definitions[category]['showcontent'] %}
{% for text, values in sections[section][category].items() %}
{% for item in text.split('\n') %}
{% if values %}
- {{ values|join(', ') }} - {{ item.strip() }}
{% else %}
- {{ item.strip() }}
{% endif %}
{% endfor %}
{% endfor %}

Expand Down
4 changes: 4 additions & 0 deletions docs/dev/arch_decision.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# Architecture Decision Records

The intention is to document deviations from a standard Model View Controller (MVC) design.

!!! warning "Developer Note - Remove Me!"
Optional page, remove if not applicable.
For examples see [Golden Config](https://github.com/nautobot/nautobot-app-golden-config/blob/develop/docs/dev/arch_decision.md).
6 changes: 6 additions & 0 deletions docs/dev/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,12 @@ The branching policy includes the following tenets:

Nautobot Dev Example App will observe semantic versioning, as of 1.0. This may result in a quick turnaround in minor versions to keep pace with an ever-growing feature set.

### Backporting to Older Releases

If you are backporting any fixes to a prior major or minor version of this app, please open an issue, comment on an existing issue, or post in the [Network to Code Slack](https://networktocode.slack.com/) (channel `#nautobot`).

We will create a `release-X.Y` branch for you to open your PR against and cut a new release once the PR is successfully merged.

## Release Policy

Nautobot Dev Example App has currently no intended scheduled release schedule, and will release new features in minor versions.
Expand Down
14 changes: 9 additions & 5 deletions docs/dev/release_checklist.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Release Checklist

This document is intended for app maintainers and covers the steps to perform when releasing new versions of the app.
This document is intended for app maintainers and outlines the steps to perform when releasing a new version of the app.

!!! important
Before starting, make sure your **local** `develop`, `main`, and (if applicable) the current LTM branch are all up to date with upstream!
Expand Down Expand Up @@ -31,6 +31,8 @@ Every minor version release should refresh `poetry.lock`, so that it lists the m

### Update Documentation

If there are any changes to the compatibility matrix (such as a bump in the minimum supported Nautobot version), update it accordingly.

Commit any resulting changes from the following sections to the documentation before proceeding with the release.

!!! tip
Expand Down Expand Up @@ -134,7 +136,7 @@ Draft a [new release](https://github.com/nautobot/nautobot-app-dev-example/relea

Click "Generate Release Notes" and edit the auto-generated content as follows:

- Change the entries generated by GitHub to only the usernames of the contributors. e.g. `* Updated dockerfile by @nautobot_user in https://github.com/nautobot/nautobot/pull/123` -> `* @nautobot_user`.
- Change the entries generated by GitHub to only the usernames of the contributors. e.g. `* Updated dockerfile by @nautobot_user in https://github.com/nautobot/nautobot-app-dev-example/pull/123` -> `* @nautobot_user`.
- This should give you the list for the new `Contributors` section.
- Make sure there are no duplicated entries.
- Replace the content of the `What's Changed` section with the description of changes from the release PR (what towncrier generated).
Expand All @@ -155,6 +157,8 @@ The release notes should look as follows:
## New Contributors

* @bob

**Full Changelog**: https://github.com/nautobot/nautobot-app-dev-example/compare/v1.4.1...v1.4.2
```

Publish the release!
Expand Down Expand Up @@ -197,11 +201,11 @@ All done!

For projects maintaining a Nautobot LTM compatible release, all development and release management is done through the `ltm-x.y` branch. The `x.y` relates to the LTM version of Nautobot it's compatible with, for example `1.6`.

The process is similar to releasing from `develop`, but with fewer steps:
The process is similar to releasing from `develop`, but there is no need for post-release branch syncing because you'll release directly from the LTM branch:

1. Make sure your `ltm-1.6` branch is passing CI.
2. Bump up the patch version `poetry version patch`. If you're backporting a feature instead of bugfixes, bump the minor version instead with `poetry version minor`.
3. Create a release branch from the `ltm-1.6` branch: `git switch -c release-1.2.3 ltm-1.6`.
2. Create a release branch from the `ltm-1.6` branch: `git switch -c release-1.2.3 ltm-1.6`.
3. Bump up the patch version `poetry version patch`. If you're backporting a feature instead of bugfixes, bump the minor version instead with `poetry version minor`.
4. Generate the release notes: `invoke generate-release-notes --version 1.2.3`.
5. Move the release notes from the generated `docs/admin/release_notes/version_X.Y.md` to `docs/admin/release_notes/version_1.2.md`.
6. Add all the changes and `git commit -m "Release v1.2.3"`, then `git push`.
Expand Down
Loading

0 comments on commit 1c7e796

Please sign in to comment.