All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added ability to flow through additional DB connection options
- Update to go 1.22.1.
- Added quotes to environment variables to sanitize & prevent errors
- Flow request type all the way down to argo workflow calls
- Added DB healthcheck
- Non-existent workflows return 404 on GET workflow calls
- Fixed return type for health check
- Panics changed to clean exits in main.go
- Flush Argo Workflow log stream
- Remove Argo Workflow status call from log streaming
- Delete tokens idempotent
- List workflows returns an empty array instead of null for targets with no workflows
- Listing workflows no longer calls a status for each workflow
- Expiration time for token
- Added schema updates to create tokens table
- Added golang-migrate to manage schema
- Delete project token
- List project tokens
- Create project token
- Added github repository from db to get projects response
- Fixed quickstart issues with standing up database
- Added log statement to clarify issues with project creation
- The default config file has been renamed to cello.yaml (when the CONFIG env var is NOT specified)
- Default workflow renamed from argo-cloudops-single-step-vault-aws.yaml to cello-single-step-vault-aws.yaml
- Example manifests now point to cello-single-step-vault-aws workflow
- Images moved to from argocloudops to celloproj
- BREAKING cli binary renamed from argo-cloudops to cello
- Environment variables prefix changed from ARGO_CLOUDOPS to CELLO (backwards compatible)
- POTENTIALLY BREAKING Release tarballs use cello naming, potentially breaking change for automation scripts
- Reference renames all around to support new cello-proj/cello repository location.
- Add target update api operation
- Change get target api response
- Validate project exists when listing targets
- Add
exec
type/command
- Approve list for pre and execute image URIs.
- Retry logging on stream INTERNAL_ERROR errors
- Add
X-Accel-Buffering=no
header to service response calls for log streaming.
- Bump github.com/argoproj/argo-workflows/v3 from 3.1.8 to 3.1.13.
- Bump github.com/aws/aws-sdk-go from 1.40.51 to 1.40.52.
- Bump github.com/go-git/go-git/v5 from 5.3.0 to 5.4.2.
- Bump github.com/google/uuid from 1.2.0 to 1.3.0.
- Bump github.com/go-kit/log from 0.10.0 to 0.12.0.
- Bump github.com/upper/db/v4 from 4.1.0 to 4.2.1.
- Bump google.golang.org/grpc from 1.40.0 to 1.41.0.
- Migrated github.com/go-kit/kit to github.com/go-kit/log.
- Update to go 1.17.1.
- Nil pointer error on bad auth header.
- Revert http listen and serve tls.
- Example manifest files.
- Bump github.com/aws/aws-sdk-go from 1.33.16 to 1.40.28.
- Bump github.com/google/go-cmp from 0.5.2 to 0.5.6.
- Bump github.com/spf13/cobra from 1.1.3 to 1.2.1.
- Updated vault api lib to v1.1.1 to try to resolve dependabot resolution issues.
- Change build test exceptions declaration (linting).
- Explicitly set http1.1 for service.
- Remove health check debug log messages.
- Retry logging on stream INTERNAL_ERROR errors.
- Updated argo-workflows to v3.1.8 to address CVE-2021-37914 (https://github.com/argoproj/argo-workflows/security/advisories/GHSA-h563-xh25-x54q).
- Duplicated log entries when streaming logs.
- Target credential_type only supports 'assumed_role'.
- Refactored validations.
- config.listFrameworks() are now sorted (helps avoid flaky tests).
- Transaction ID label added for workflow submissions.
- config.listFrameworks() was returning additional empty items.
- Invalid json response when creating a project with invalid admin credentials.
- Request logger didn't log all key/value pairs.
- Vault token exchange logic for examples when there's a failure.
- Refactor credential provider client.
- Fix response statuses.
- Parsing of csv arguments in cli with
=
in the value.
- Fixed get project response shape.
policy_document
to targets.
- Updated go to 1.16.6.
- Validations for workflow should not fail if arguments are empty
- Git auth can now be configured for ssh or https
- Terraform example code no longer needs state bucket
- Fixed a bug in create git workflow validation
- Refactor validations.
- Refactor requests and responses.
- Fixed a bug while fetching existing repositories
- Updated go to 1.16.5 for release process.
- Updated go to 1.16.5.
- Git information is now stored in a postgreSQL database on project creation
- Git information is now retrieved from db and used for workflow operations
- Project create API now takes in repository
- Operations API no longer takes in repository
- Updated CHANGELOG to 'Keep a Changelog' format.
- Release automation using GoReleaser.
- Updated CHANGELOG to 'Keep a Changelog' format.
- Health check tests.
- More linting.
- Health check uses newer env var pattern.
- Health check uses newer logging pattern.
- Health check now responds with the same for success/failure (was json for failures).
- Issues reported by linter.
- CLI tests.
- More linting.
- Break up CLI commands into separate files.
- Issues reported by linter.
- Move env to internal service package
- Using X-B3-TraceId as trace HTTP header
- Adding HTTP headers to Vault client for logging (e.g. transaction ID
- Add additional valid status codes for Vault health check
- Tests for vault credential provider
- Vault service health check
- Update credentials provider to be internal package
- Environmental variable handling
- Passing Argo context to Argo Workflow calls
- Update environmental variable name to specify workflow execution namespace
- Adds operations API for git based sync/diff
- Fix typos in CLI command description
- Use GitHub Action for linting.
- Fix issues reported by linter.
- Perform deeper linting.
- Add build caching.
- Remove vendoring.
- Set service port via environment variable, default 8443
- Initial release