Skip to content

Releases: ccremer/clustercode

v2.0.0

06 Oct 00:16
930cee6
Compare
Choose a tag to compare

a lot of changes since 1.3.3

This Release marks a milestone in clustercode.
It's not perfect by far, but I wanted to get out a release eventually.

Please note that the changelog below is not useful at all when coming from v1.x.
v2 is a complete rewrite of clustercode.

  • Instead of Java, it's written in Go.
  • Instead of a master node with workers, it's a Kubernetes Operator that spawns Jobs
  • Instead of scheduling separate media files across each worker, each Job splits, encodes and then merges a chunk of a single media file

This release comes also with the start of a WebUI (formerly https://github.com/ccremer/clustercode-admin). However, it's not in a working state yet (it's currently just a login text box 🤣 ).

To get started, you can check out the end-to-end test case to figure out how to configure things.
Documentation is practically inexistent yet.

Please note that this is my personal sandbox project on a practical use case. I don't expect people that they actually deploy this 🤣
However, I'm grateful for contributions if you do find it useful.

🚀 Features

🛠️ Minor Changes

🔎 Breaking Changes

📄 Documentation

chart/clustercode-0.3.0

05 Oct 22:15
df0f073
Compare
Choose a tag to compare

This release contains only Helm chart changes

3 changes since chart/clustercode-0.2.0

🚀 Features

  • Deploy additional Service Accounts for webui (#192)

🔎 Breaking Changes

  • Add WebUI component to Chart (#180)

🔗 Dependency Updates

  • chore(deps): update ghcr.io/jrottenberg/ffmpeg docker tag to v5.1 (#191)

v2.0.0-rc5

17 Sep 20:14
b4d20ef
Compare
Choose a tag to compare
v2.0.0-rc5 Pre-release
Pre-release

4 changes since v2.0.0-rc4

🚀 Features

🛠️ Minor Changes

🔗 Dependency Updates

chart/clustercode-0.2.0

16 Sep 21:23
a41c0bc
Compare
Choose a tag to compare

Movie and Series conversion Operator with Ffmpeg

v2.0.0-rc4

12 Sep 16:26
9b9455c
Compare
Choose a tag to compare
v2.0.0-rc4 Pre-release
Pre-release

76 changes since v2.0.0-rc3

🚀 Features

  • Add Helm chart and automation boilerplate by @ccremer (#158)
  • Add status conditions (#163) by ccremer
  • Add possibility to customize the spawned pods (#168) by ccremer
  • Add admission webhook server (#169) by ccremer

🛠️ Minor Changes

  • Rework Workflows around documentation (#30) by ccremer
  • Replace local registry by loading e2e images directly onto KIND cluster (#32) by ccremer
  • Move e2e make targets in its own makefile to clean up the main one (#33) by ccremer
  • Modularize make structure (#47) by ccremer
  • Rework GitHub workflows (#50) by ccremer
  • Use GH action to trigger workflow event in another repo (#52) by ccremer
  • Rework e2e structure (#51) by ccremer
  • Add builder utilities (#58) by ccremer
  • Rename Kustomize dir (#61) by ccremer
  • Restructure project around different CLI library (#153) by ccremer
  • Update local dev environment (#157) by ccremer
  • Update Antora documentation boilerplate to host docs in GH Pages (#159) by ccremer
  • Replace BATS with Kuttl for e2e testing (#160) by ccremer
  • Internal restructure (#161) by ccremer
  • Add RBAC permission to delete collections of jobs (#167) by ccremer

🔎 Breaking Changes

  • Rename ClustercodePlan to Blueprint (#56) by ccremer
  • Rename ClustercodeTask to Task (#57) by ccremer
  • Add webhook deployment to chart (#170) by ccremer

📄 Documentation

  • Add changelog link in docs (#31) by ccremer
  • Add overview graphic of clustercode (#48) by ccremer
  • Generate API reference for Antora (#64) by ccremer

🔗 Dependency Updates

  • Update mikepenz/release-changelog-builder-action action to v1.3.1 (#34) by renovate[bot]
  • Update module knadh/koanf to v0.14.1 (#36) by renovate[bot]
  • Update mikepenz/release-changelog-builder-action action to v1.4.1 (#39) by renovate[bot]
  • Update module knadh/koanf to v0.15.0 (#37) by renovate[bot]
  • Update k8s.io/utils commit hash to fddb29f (#38) by renovate[bot]
  • Update module stretchr/testify to v1.7.0 (#40) by renovate[bot]
  • Update docker.io/library/alpine Docker tag to v3.13 (#45) by renovate[bot]
  • Upgrade to K8s 1.20 (#46) by ccremer
  • Update mikepenz/action-junit-report action to v2 (#49) by renovate[bot]
  • Update mikepenz/release-changelog-builder-action action to v1.4.2 (#54) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.8.1 (#55) by renovate[bot]
  • Update module go-logr/logr to v0.4.0 (#60) by renovate[bot]
  • Update module spf13/cobra to v1.1.3 (#62) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.8.2 (#63) by renovate[bot]
  • Update module k8s.io/api to v0.20.3 (#68) by renovate[bot]
  • Update module elastic/crd-ref-docs to v0.0.7 (#66) by renovate[bot]
  • Update module k8s.io/client-go to v0.20.4 (#70) by renovate[bot]
  • Pin mikepenz/release-changelog-builder-action action to v1 (#74) by ccremer
  • Update module sigs.k8s.io/controller-tools to v0.5.0 (#73) by renovate[bot]
  • Update k8s.io/utils commit hash to 2afb431 (#75) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.8.3 (#76) by renovate[bot]
  • Update module k8s.io/client-go to v0.20.5 (#82) by renovate[bot]
  • Update dependency handlebars to 4.7.7 [SECURITY] (#87) by renovate[bot]
  • Update dependency hosted-git-info to 2.8.9 [SECURITY] (#88) by renovate[bot]
  • Update module go.uber.org/zap to v1.17.0 (#92) by renovate[bot]
  • Update module github.com/knadh/koanf to v1 (#91) by renovate[bot]
  • Update module github.com/knadh/koanf to v1.1.0 (#93) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.9.0 (#94) by renovate[bot]
  • Update dependency url-parse to 1.5.0 [SECURITY] (#96) by renovate[bot]
  • Update dependency normalize-url to 4.5.1 [SECURITY] (#100) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.9.1 (#105) by renovate[bot]
  • Update module github.com/knadh/koanf to v1.1.1 (#106) by renovate[bot]
  • Update mikepenz/release-changelog-builder-action action to v2 (#107) by renovate[bot]
  • Update module go.uber.org/zap to v1.18.1 (#109) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.9.2 (#108) by renovate[bot]
  • Update dependency path-parse to 1.0.7 [SECURITY] (#119) by renovate[bot]
  • Update dependency url-parse to 1.5.2 [SECURITY] (#121) by renovate[bot]
  • Update dependency docker.io/library/alpine to v3.16 (#101) by renovate[bot]
  • Update module github.com/knadh/koanf to v1.4.2 (#116) by renovate[bot]
  • Update paambaati/codeclimate-action action to v3 (#125) by renovate[bot]
  • Upgrade Antora to v3 (#138) by ccremer
  • Update various dependencies (#141) by ccremer
  • Update actions/setup-go action to v3 (#146) by renovate[bot]
  • Update actions/checkout action to v3 (#145) by renovate[bot]
  • Update goreleaser/goreleaser-action action to v3 (#148) by renovate[bot]
  • Update actions/cache action to v3 (#144) by renovate[bot]
  • Update mikepenz/release-changelog-builder-action action to v3 (#149) by renovate[bot]
  • Update module go.uber.org/zap to v1.23.0 (#162) by renovate[bot]
  • Update npm (#165) by renovate[bot]
  • Update k8s.io/utils digest to e9cbc92 (#164) by renovate[bot]
  • Update module sigs.k8s.io/controller-runtime to v0.13.0 (#166) by renovate[bot]

v2.0.0-rc2

01 Jan 11:39
2e5ee95
Compare
Choose a tag to compare
v2.0.0-rc2 Pre-release
Pre-release

9 changes since 1.3.2

🚀 Features

  • Added Cleanup command PoC (PR #20)

🛠️ Minor Changes

  • More CI improvements (PR #14)
  • Replace Goreleaser changelog generator with PR-based generator (PR #18)

🔎 Breaking Changes

  • Reimplementation in Go (PR #13)

🐛 Fixes

  • Fix failing e2e test in PRs (PR #19)

📄 Documentation

  • Add process diagram (PR #15)

🔗 Dependency Updates

  • Update build-changelog action to 1.3.0 (PR #21)
  • Update k8s.io/utils commit hash to 67b214c (PR #22)
  • Update module go.uber.org/zap to v1.16.0 (PR #23)

Docker images

  • docker pull docker.io/ccremer/clustercode:v2.0.0-rc2
  • docker pull quay.io/ccremer/clustercode:v2.0.0-rc2
  • docker pull docker.io/ccremer/clustercode:v2
  • docker pull quay.io/ccremer/clustercode:v2
  • docker pull docker.io/ccremer/clustercode:latest
  • docker pull quay.io/ccremer/clustercode:latest

v2.0.0-rc1

26 Dec 01:30
9d824d7
Compare
Choose a tag to compare
v2.0.0-rc1 Pre-release
Pre-release

Changelog

This is a big prerelease. Everything has changed since 1.x
The entire code has been rewritten for Kubernetes.
Kubernetes is now a requirement. This Operator works on any Linux Kubernetes (if you have the Admin permissions to install CRDs).

Docker images

  • docker pull docker.io/ccremer/clustercode:v2.0.0-rc1
  • docker pull quay.io/ccremer/clustercode:v2.0.0-rc1

1.3.2

12 Feb 16:12
Compare
Choose a tag to compare
1.3.2 Pre-release
Pre-release

Bugfix release

  • The profile file now supports double quoted arguments, e.g. title="one two" will be parsed as such, instead of the old way title="one and two".

1.3.1

24 Oct 17:31
Compare
Choose a tag to compare

Changes since 1.2.0

New Features

  • WebAdmin UI: It is now possible to cancel a running conversion. The affected node will then wait for the next scan iteration, which provides time to make modifications on the profiles or shut it down.
  • New cleanup strategy: Mark source in directory. Instead of creating a *.done file next to the input file, it will now be created in the directory you specify. This allows the input folders to be left alone/unmodified.

Changes

  • REST: Added REST API for /api/v1/tasks/stop with DELETE method. It expects a query parameter for a given hostname, e.g. /api/v1/tasks/stop?hostname=the.node. The hostname is retrievable by calling /api/v1/tasks first.
  • Settings:
    • CC_CLEANUP_MARK_SOURCE_DIR (= /input/done) [new]
    • New enum possible for CC_CLEANUP_STRATEGY: MARK_SOURCE_DIR
    • new Jgroups Settings file: fork.xml. (relevant for windows and persisted config dir in docker)
    • Changed protocol stack in tcp.xml. (relevant for windows and persisted config dir in docker)
  • Other
    • Fixed a bug in 1.3.0 that would leave tasks in the cluster forever if a node died and restarted.
    • The default profiles now use the "medium" preset, instead of "ultrafast/faster" at the cost of encoding time, but the resulting file size should be lower now.

1.3.0

16 Sep 12:12
Compare
Choose a tag to compare
1.3.0 Pre-release
Pre-release

New Features

  • WebAdmin UI: It is now possible to cancel a running conversion. The affected node will then wait for the next scan iteration, which provides time to make modifications on the profiles or shut it down.
  • New cleanup strategy: Mark source in directory. Instead of creating a *.done file next to the input file, it will now be created in the directory you specify. This allows the input folders to be left alone/unmodified.

Changes

  • REST: Added REST API for /api/v1/tasks/stop with DELETE method. It expects a query parameter for a given hostname, e.g. /api/v1/tasks/stop?hostname=the.node. The hostname is retrievable by calling /api/v1/tasks first.
  • Settings:
    • CC_CLEANUP_MARK_SOURCE_DIR (= /input/done) [new]
    • New enum possible for CC_CLEANUP_STRATEGY: MARK_SOURCE_DIR
    • new Jgroups Settings file: fork.xml. (relevant for windows and persisted config dir in docker)
    • Changed protocol stack in tcp.xml. (relevant for windows and persisted config dir in docker)

This release might be unstable in a clustered setup. I'm working on it.