Skip to content

Commit

Permalink
Prepare for 0.1.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
merlinz01 committed Oct 28, 2024
1 parent dd3bcda commit 6ffe393
Show file tree
Hide file tree
Showing 6 changed files with 266 additions and 307 deletions.
164 changes: 0 additions & 164 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,168 +8,4 @@ This is the changelog for RedPepper.

- **BREAKING CHANGE**: Use MessagePack instead of Protobuf for manager/agent communications.
**This is not backwards compatible. All Manager and Agent instances must be updated at the same time.**
Since there are more breaking changes planned but we want to get this released, we are not bumping the minor version number.
- Prompt for username if not supplied to `install-login` tool.

## [0.0.17]

- Fix missing `pydantic` dependency in `redpepper-common`.

## [0.0.16]

### Added

- Add option to disable TLS keys file mode check.
- Set up code coverage reporting in Github Actions.

### Changed

- Improve async task flow for connections for better reliability and testability.
- Use a lock instead of a queue for message sending.

### Fixed

- Fix the cron job for renewing Step CA certificates.

### Removed

- Remove operation dependency feature.

## [0.0.15]

### Security

- Set API session cookie `samesite` attribute to `Strict`.

### Added

- Add navigation links to home page of console.
- Add Github Actions workflow for running tests.

### Changed

- Migrate console code to TypeScript.
- Use Vuetify for the console UI.
- Use `axios` for API requests in the console.
- Updates to console help page.

## [0.0.14]

### Security

- Use `argon2` for password hashing.
- Increase login constant-time to 0.5 seconds.

### Added

- Add `install-login` tool for setting up a login for the Manager API.
- Initialize testing framework with `pytest` and `pytest-trio`.

### Changed

- Use `pydantic` for configuration validation.

### Fixed

- Update various usages of console assets path.

## [0.0.13]

### Changed

- Update default command log path.
- Install `redpepper-step-ca` systemd service file by default when running `setup-step-ca` on Linux.
- Use existing provisioner password file for manager and api certificate installation.

## [0.0.12]

### Fixed

- Include both `.yml` and `.yaml` files in the default configuration dirs, but change tools to use `.yml` extension.
- Add newline to end of step renew cron job.
- Fix default path to step CA file.

## [0.0.11]

### Fixed

- Update default operations cache directory.
- Create operations cache directory in install script.
- Reset umask in install script so systemd doesn't complain about permissions.

### Changed

- Update default `step` config path in `redpepper-tools`.

## [0.0.10]

### Added

- Add `--stepbinary` flag with default to step-related tools.

### Changed

- Update default config paths and include option.
- Improve error messages for missing certificate/key files.

### Fixed

- Fix systemd service file commands for `redpepper-agent` and `redpepper-manager`.

## [0.0.9]

### Fixed

- Various improvements to the `install-step-ca` script.

## [0.0.8]

### Changed

- Update various default paths for installation tools.

## [0.0.7]

### Changed

- Update installation docs with new installation and setup commands.
- Add checksum file to GitHub release assets.
- Update console install script with default download path.
- Use [`ruff`](https://docs.astral.sh/ruff) for Python formatting and linting.
- Add default requests and operations as Python packages.

## [0.0.6]

### Added

- Install `redpepper-tools` along with the Manager and Agent when using the default install script.

## [0.0.5]

### Changed

- Update install scripts to use `uv` for deployment.
- Migrate various utilities from shell scripts to Python scripts in `redpepper-tools`.

## [0.0.4]

(No changes)

## [0.0.3]

### Changed

- Update `pyproject.toml` project URL's.
- Change manager `fastapi[standard]` dependency to `fastapi`.

## [0.0.2]

### Changed

- Update `pyproject.toml` metadata.

## [0.0.1]

### Changed

- Use [`uv`](https://docs.astral.sh/uv) for workspace and dependency management.
166 changes: 166 additions & 0 deletions docs/changelog-0.0.x.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
# Changelog

This is the changelog for the previous 0.0.x versions of RedPepper.

## [0.0.17]

- Fix missing `pydantic` dependency in `redpepper-common`.

## [0.0.16]

### Added

- Add option to disable TLS keys file mode check.
- Set up code coverage reporting in Github Actions.

### Changed

- Improve async task flow for connections for better reliability and testability.
- Use a lock instead of a queue for message sending.

### Fixed

- Fix the cron job for renewing Step CA certificates.

### Removed

- Remove operation dependency feature.

## [0.0.15]

### Security

- Set API session cookie `samesite` attribute to `Strict`.

### Added

- Add navigation links to home page of console.
- Add Github Actions workflow for running tests.

### Changed

- Migrate console code to TypeScript.
- Use Vuetify for the console UI.
- Use `axios` for API requests in the console.
- Updates to console help page.

## [0.0.14]

### Security

- Use `argon2` for password hashing.
- Increase login constant-time to 0.5 seconds.

### Added

- Add `install-login` tool for setting up a login for the Manager API.
- Initialize testing framework with `pytest` and `pytest-trio`.

### Changed

- Use `pydantic` for configuration validation.

### Fixed

- Update various usages of console assets path.

## [0.0.13]

### Changed

- Update default command log path.
- Install `redpepper-step-ca` systemd service file by default when running `setup-step-ca` on Linux.
- Use existing provisioner password file for manager and api certificate installation.

## [0.0.12]

### Fixed

- Include both `.yml` and `.yaml` files in the default configuration dirs, but change tools to use `.yml` extension.
- Add newline to end of step renew cron job.
- Fix default path to step CA file.

## [0.0.11]

### Fixed

- Update default operations cache directory.
- Create operations cache directory in install script.
- Reset umask in install script so systemd doesn't complain about permissions.

### Changed

- Update default `step` config path in `redpepper-tools`.

## [0.0.10]

### Added

- Add `--stepbinary` flag with default to step-related tools.

### Changed

- Update default config paths and include option.
- Improve error messages for missing certificate/key files.

### Fixed

- Fix systemd service file commands for `redpepper-agent` and `redpepper-manager`.

## [0.0.9]

### Fixed

- Various improvements to the `install-step-ca` script.

## [0.0.8]

### Changed

- Update various default paths for installation tools.

## [0.0.7]

### Changed

- Update installation docs with new installation and setup commands.
- Add checksum file to GitHub release assets.
- Update console install script with default download path.
- Use [`ruff`](https://docs.astral.sh/ruff) for Python formatting and linting.
- Add default requests and operations as Python packages.

## [0.0.6]

### Added

- Install `redpepper-tools` along with the Manager and Agent when using the default install script.

## [0.0.5]

### Changed

- Update install scripts to use `uv` for deployment.
- Migrate various utilities from shell scripts to Python scripts in `redpepper-tools`.

## [0.0.4]

(No changes)

## [0.0.3]

### Changed

- Update `pyproject.toml` project URL's.
- Change manager `fastapi[standard]` dependency to `fastapi`.

## [0.0.2]

### Changed

- Update `pyproject.toml` metadata.

## [0.0.1]

### Changed

- Use [`uv`](https://docs.astral.sh/uv) for workspace and dependency management.
10 changes: 8 additions & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
![](redpepper.png)

# Welcome to RedPepper

![RedPepper logo](redpepper.png)

RedPepper is a state-based configuration management system written in Python.
It has two basic components: a central manager and one or more agents on controlled servers.
RedPepper is used to distribute configuration to servers and ensure that the servers remain in a consistent state.
Expand All @@ -17,6 +17,12 @@ RedPepper is used to distribute configuration to servers and ensure that the ser
- [Security Features](security-features.md)
- [Communication Protocol](protocol.md)

## Other Links

- [0.0.x Changelog](changelog-0.0.x.md)

## License

RedPepper (c) 2024 Merlin Zimmerman. This project is licensed under the MIT License.
You are free to use, modify, and distribute the software as long as you include the original copyright notice.
See the [LICENSE.txt](https://github.com/merlinz01/redpepper/LICENSE.txt) for more info.
15 changes: 3 additions & 12 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,6 @@ cmd = 'rm -f dist/*.whl dist/*.tar.gz'
deps = ['clean', 'sync']
sequence = [{ cmd = 'uv build --all' }]

[tool.poe.tasks.publishpypi]
cmd = "uvx twine upload dist/redpepper*"

[tool.poe.tasks.buildconsole]
sequence = [
{ cmd = "npm run build" },
Expand All @@ -108,17 +105,11 @@ cwd = 'console'
cmd = "npm run dev"
cwd = 'console'

[tool.poe.tasks.bumpversion]
cmd = "uv run scripts/bump_version.py"
[tool.poe.tasks.publishpypi]
cmd = "uvx twine upload dist/redpepper*"

[tool.poe.tasks.release]
sequence = [
{ ref = 'test' },
{ ref = 'build' },
{ ref = 'buildconsole' },
{ cmd = 'uv run scripts/release.py' },
{ ref = 'publishpypi' },
]
cmd = 'uv run scripts/release.py'

[tool.poe.tasks.test]
cmd = "pytest"
Expand Down
Loading

0 comments on commit 6ffe393

Please sign in to comment.