Skip to content

0.48.0

Compare
Choose a tag to compare
@richardlt richardlt released this 25 Feb 16:11
· 1012 commits to master since this release
9622b23

0.48.0 (2021-02-25)

Note about upgrading CDS

You have to install version 0.46.0 or newer if you want to upgrade your CDS Instance from a version < 0.46 to this newer version.

When you are upgrading CDS:

Notable Changes in version 0.48.0

Workflow Run retention policy

Workflow run retention policy is now expressed with LUA, this allows to define custom rules for workflows. The default rule will keep a run for one year.
⚠ Be careful, when installing this release the following rule will be applied on all your workflow. Workflow runs that are older than one year will be automatically deleted. You can skip this release and install version 0.48.1 if you don't want to use the retention policy feature. ⚠

retention_rule

If you want to keep Workflow Runs that are older than one year you can edit the default rule in database after running the CDS SQL migrations and before starting CDS API using the following query.

# Example: set default rule to keep Workflow Runs for 2 years
UPDATE workflow SET retention_policy = 'return run_days_before < 730';

CDN service

The release 0.48.0 introduced a new CDS service called CDN. This service is dedicated to receive and store CDS’s job logs.
We created this service to be able to move out job's logs from CDS database to an object storage provider.

In this release, logs are stored both in CDN storage units and CDS database to facilitate migration. Old log data and database table will be removed in a future release.

More info about CDN service at https://ovh.github.io/cds/docs/components/cdn/.

cdn_logs_receives

We also completely rework the UI log page to improve logs readability. Thanks to CDN paginated and streaming apis, rendering logs is now faster and efficient.

logs

Features

Bug Fixes

  • action/plugin-kubernetes: improve error (#5389) (04dd681)
  • api: manage change not found in gerrit (#5514) (9f00a81)
  • api: craft workflow runs (#5355) (a111301)
  • api: do not clean requirements when job is disabled (#5483) (e1a5c36)
  • api: don't load service on repositoriesManagerOAuthCallbackHandler (#5461) (2d8dd4a)
  • api: event username should be consumer name for services (#5390) (8295a9d)
  • api: import workflow with perms on node (#5451) (283a7fe)
  • api: improve display err to user (#5680) (b643bee)
  • api: missing workflow context fields for audits (#5562) (e044518)
  • api: return more details on template apply error (#5548) (9de27a5)
  • api: safely stop engine (#5403) (7ed8d51)
  • api: sendmail utf-8 (#5472) (b7205f5), closes #5351
  • api: support utf8 in mail subject (#5464) (c75fecc)
  • api: websocket event lost when many clients (#5509) (d819768)
  • api,cdsctl: eventIntegration import/export (#5421) (5d1672a)
  • api,ui: allow to change sshkey on edit as code (#5560) (89e5b34)
  • api,ui: display ascode error messages (#5448) (54b8972)
  • api,ui: remove node run sidebar + remove data from getRuns (#5510) (4b4b725)
  • cdsctl: verbose and insecure config from env or flags (#5384) (a5b0200)
  • cli: "cdsctl verify" don't use advertised API URL (#5391) (fe479ec)
  • engine: manage signout (#5467) (983bb56)
  • engine: remove deprecated kafka-cluster lib (#5478) (48b39ee)
  • hook: gerrit reconnection (#5413) (cd6e2a1)
  • hook: in case of pr:merged, default branch is the destination branch (#5584) (7ebebeb)
  • hooks: listen with many kafka brokers (#5633) (8ab6831)
  • repositories: clean repo basedir if any operation occurs in push operation (#5490) (107a814)
  • sdk: print date with timezone in service status (#5513) (40a6e51)
  • sdk: workflow as code parser raise error if 2 roots are detected (#5491) (7581fde)
  • services: heartbeat when the service was fully started (#5673) (bd4f0ce)
  • services: stop service when heartbeat returns forbidden (#5658) (201794f)
  • ui: add border to avoid invisible input (#5711) (885ee00)
  • ui: add distinct deploy url param for ui service (#5338) (0cf6d40)
  • ui: edit notifications (#5463) (bf55821), closes #5055 #5290
  • ui: limit 30 workflow runs in sidebar (04c3e66)
  • ui: limit results in repo list (#5647) (d1f6871)
  • ui: remove _sseSubscription support (#5358) (eaa1d87)
  • ui: start ui service even if not registered (#5466) (a8a80db)
  • vcs: building status with gerrit (#5496) (b01c2d2)
  • vcs: github pr events (#5565) (0e45ee3)
  • vcs,elasticsearch: use name from conf (efbe00d)
  • vcs/bitbucket: pull request comment must be less than 32768 chars (#5601) (76f67d1)
  • worker: builtin release action (#5597) (3b2aa60)
  • worker: fix cache push error and retry (#5653) (939b1df)
  • worker: git clone on windows over ssh (#5385) (d28bb81)
  • worker: limit workdir path longuer using a hash (#5311) (4b04067)
  • worker: panic when no content (#5453) (196a212)
  • worker: support secrets in worker tmpl command (#5455) (41100fc)
  • take snapshot of secrets when running a workflow (#5223) (7a212af)

Performance Improvements

  • api: getPipeline / env / app (6d9163e)