Skip to content

Commit

Permalink
- Moving old roadmap to TODO and restructured TODO.
Browse files Browse the repository at this point in the history
- Added link to new "roadmap" board.
  • Loading branch information
kristofferahl committed Feb 6, 2024
1 parent 319e63b commit b8ddc86
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 45 deletions.
36 changes: 1 addition & 35 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,41 +70,7 @@ outputs:
## Roadmap
- [x] Exporting of secrets to multiple outputs (dotenv, tfvars)
- [x] Seeding of secrets not already in the store
- [x] Export outputs to stdout (no logging allowed)
- [x] Command for reading a single secrets value
- [ ] Release pipeline
- [ ] Tagging of external resources
- [x] Context support (dev / production / cicd / localdev etc)
- [x] Key format for Parameter Store
- [x] Remapping support for outputs (PaymetApiKey -> Payment\_\_ApiKey)
- [ ] Generators for providing generated values when seeding a secret
- [ ] Listing secrets in a given context
- [ ] Deleting a secret from the store
- [x] Json output format
- [ ] Shell (bash/zsh/sh) output format
- [ ] Certificate output format
- [ ] Kubernetes secret output format
- [ ] Kubernetes configmap output format
- [ ] Naming conventions for outputs
- [ ] Command for local cleanup of generated files
- [ ] Store provider for AWS Secrets Manager : Secrets
- [ ] Store provider for Azure Key Vault : Secrets
- [x] Flag for specifying other filenames for racoon.y\*ml
- [ ] Readonly secrets (used for consuming secret managed by external system)
- [ ] Move command for moving secrets in the store
- [ ] Init command for creating the manifest file
- [x] Cleaner handling of errors (less panic, more logging and exit codes)
- [x] Ability to select secrets for export using flags (racoon export --include||--exclude Secret1)
- [x] Ability to select secrets for export using output config (include:[] exclude:[])
- [ ] Conditional sync for faster exports (export based on hash sum for context)
- [ ] Dump command for creating a local cache that is used until cache is no longer available (no calls to the store when cache is available)
- [x] Configuration of outputs (example: dotenv without doublequotes)
- [x] Update description on existing secrets
- [ ] Validate command or a --validate flag for the create command
- [ ] Command for finding secret manifests recursively and display a graph on secrets usage
- [ ] Value from command (command: cmd: "uuidgen --context={Context} --other={Overlay}" format: "{Value}"))
[Check out the roadmap](https://github.com/orgs/dotnetmentor/projects/1)
## Development
Expand Down
56 changes: 46 additions & 10 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# TODO

## Completed from old roadmap

- [x] Exporting of secrets to multiple outputs (dotenv, tfvars)
- [x] Seeding of secrets not already in the store
- [x] Export outputs to stdout (no logging allowed)
- [x] Command for reading a single secrets value
- [x] Context support (dev / production / cicd / localdev etc)
- [x] Key format for Parameter Store
- [x] Remapping support for outputs (PaymetApiKey -> Payment\_\_ApiKey)
- [x] Json output format
- [x] Flag for specifying other filenames for racoon.y\*ml
- [x] Cleaner handling of errors (less panic, more logging and exit codes)
- [x] Ability to select secrets for export using flags (racoon export --include||--exclude Secret1)
- [x] Ability to select secrets for export using output config (include:[] exclude:[])
- [x] Configuration of outputs (example: dotenv without doublequotes)
- [x] Update description on existing secrets

## Completed

- [x] Introduced properties concept (replaces secrets)
- [x] Introduced the concept of sensitive values
- [x] Introduced layers concept
Expand Down Expand Up @@ -55,21 +74,38 @@
- [x] Feature: Allow {name} to be replaced with the manifest name
- [x] Feature: Added logging of provided parameters during matching
- [x] Feature: Optional formatters where replacement can be enforced by defining rules
- [x] Feature: "config init" command for generating a "started" config

## In progress

- [ ] Initial round of real world testing

- [ ] (in-progress) Initial round of real world testing
## Next

- [ ] What's the tagline for the project, update readme, repository and cli help

## Proposals

NOTE! These have yet to make it onto the project board

- [ ] Update the readme and move remaining todo's to roadmap
- [ ] Feature: Add output type "combine", that combines aliased outputs
- [ ] Feature: Comments in dotenv output? To add generated by comment and possibly include property name and description?
- [ ] More tests on multiple levels and components (e2e, unit etc)
- [ ] Feature: Cleanup command to remove files specified in outputs
- [ ] Feature: Conditional outputs, based on same matching method as layers
- [ ] More and better tests on multiple levels and components (e2e, unit etc)
- [ ] Feature: Basic support for Int, String and Boolean values
- [ ] Feature: Validation options, Value type (Int, String, Bool etc)
- [ ] Feature: Validation options, Value match Regexp (.\*)
- [ ] Feature: Validation options, String values - MinLength: 3, MaxLength: 16 etc
- [ ] Feature: Allow layers to be defined in separate files
- [ ] Feature: Allow generating values to help with seeding the store (based on validation rules)
- [ ] Feature: Caching for sources during a single run
- [ ] Feature: Use config.sources as a way to enable the use of a source (if not specified, then it's not enabled)?
- [ ] Feature: Allow enforcing senitive values can't be written to "unsafe" store
- [ ] Feature: UI: ... what do we need to make it helpful to devs and administrators?
- [ ] Feature: Add output type "merge", that combines aliased outputs
- [ ] Feature: Conditional outputs, based on same matching method as layers
- [ ] Feature: Command for listing properties
- [ ] Feature: Deleting a value from a writable source (useful for cleanup)
- [ ] Feature: Moving a value from one source to another
- [ ] Feature: Copying a value from one source to another
- [ ] Feature: Certificate output format
- [ ] Feature: Kubernetes secret output format
- [ ] Feature: Kubernetes configmap output format
- [ ] Feature: "Naming" conventions for outputs
- [ ] Feature: New writable source, AWS Secrets Manager
- [ ] Feature: New writable source, Azure Key Vault
- [ ] Feature: Readonly properties (used for consuming values managed by external system)

0 comments on commit b8ddc86

Please sign in to comment.