From 695c03efba1251c2e4acbdc31fca2283733d0356 Mon Sep 17 00:00:00 2001 From: Thomas Poignant Date: Thu, 26 Sep 2024 10:53:31 +0200 Subject: [PATCH] chore(migration-cli): Stop building the migration-cli (#2424) * chore(migration-cli): Stop building the migration-cli Signed-off-by: Thomas Poignant * Add documentation Signed-off-by: Thomas Poignant --------- Signed-off-by: Thomas Poignant --- .github/workflows/release.yml | 29 ---- .goreleaser.yaml | 163 ------------------- cmd/migrationcli/DOCKERHUB.md | 29 ---- cmd/migrationcli/DOCKERHUB_thomaspoignant.md | 31 ---- website/docs/tooling/migrate_v0_v1.md | 5 + 5 files changed, 5 insertions(+), 252 deletions(-) delete mode 100644 cmd/migrationcli/DOCKERHUB.md delete mode 100644 cmd/migrationcli/DOCKERHUB_thomaspoignant.md diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 73bdafe4bdb..c82cdf22c68 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -72,35 +72,6 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.PERSONAL_GITHUB_TOKEN }} - dockerhub-migration-cli: - runs-on: ubuntu-latest - name: Upload dockerhub readme - needs: - - goreleaser - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Release readme to DockerHub - uses: ms-jpq/sync-dockerhub-readme@v1 - env: - DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} - DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} - with: - username: ${DOCKER_USERNAME} - password: ${DOCKER_PASSWORD} - repository: thomaspoignant/go-feature-flag-migration-cli - readme: "./cmd/migrationcli/DOCKERHUB_thomaspoignant.md" - - name: Release readme to DockerHub gofeatureflag - uses: ms-jpq/sync-dockerhub-readme@v1 - env: - DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} - DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} - with: - username: ${DOCKER_USERNAME} - password: ${DOCKER_PASSWORD} - repository: gofeatureflag/go-feature-flag-migration-cli - readme: "./cmd/migrationcli/DOCKERHUB.md" - dockerhub-lint: runs-on: ubuntu-latest name: Upload dockerhub readme diff --git a/.goreleaser.yaml b/.goreleaser.yaml index f5fdf22b44c..c415c763611 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -7,30 +7,6 @@ before: dist: release builds: - - id: go-feature-flag-migration-cli - main: ./cmd/migrationcli - binary: go-feature-flag-migration-cli - env: - - CGO_ENABLED=0 - goos: - - darwin - - linux - - windows - goarch: - - 386 - - amd64 - - arm64 - - arm - goarm: - - 6 - - 7 - ignore: - - goos: darwin - goarch: 386 - - goos: linux - goarch: arm - goarm: 6 - # DEPRECATED: check go-feature-flag # We aim to deprecate the name relay proxy, so the main build should be called go-feature-flag - id: go-feature-flag-relay-proxy @@ -138,19 +114,6 @@ builds: - "7" archives: - - id: go-feature-flag-migration-cli - name_template: "go-feature-flag-migration-cli_\ - {{ .Version }}_\ - {{- title .Os }}_\ - {{- if eq .Arch \"amd64\" }}x86_64\ - {{- else if eq .Arch \"386\" }}i386\ - {{- else }}{{ .Arch }}{{ end }}\ - {{- with .Arm }}v{{ . }}{{ end }}\ - {{- with .Mips }}_{{ . }}{{ end }}\ - {{- if not (eq .Amd64 \"v1\") }}{{ .Amd64 }}{{ end }}" - builds: - - go-feature-flag-migration-cli - - id: go-feature-flag-editor name_template: "go-feature-flag-editor_\ {{ .Version }}_\ @@ -395,60 +358,6 @@ dockers: - "--label=org.opencontainers.image.url=https://gofeatureflag.org/docs/relay_proxy" - "--label=org.opencontainers.image.version={{ .Version }}" -# migration-cli - - use: buildx - goos: linux - goarch: amd64 - ids: - - go-feature-flag-migration-cli - dockerfile: ./cmd/migrationcli/Dockerfile - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - build_flag_templates: - - "--platform=linux/amd64" - - "--label=org.opencontainers.image.created={{ .Date }}" - - "--label=org.opencontainers.image.description=A migration command line to move your feature flag configuration file from format GO Feature Flag v0.X to v1.X" - - "--label=org.opencontainers.image.revision={{ .FullCommit }}" - - "--label=org.opencontainers.image.source=https://github.com/thomaspoignant/go-feature-flag" - - "--label=org.opencontainers.image.title=go-feature-flag-migration-cli" - - "--label=org.opencontainers.image.url=https://gofeatureflag.org/docs/tooling/migrate_v0_v1" - - "--label=org.opencontainers.image.version={{ .Version }}" - - use: buildx - goos: linux - goarch: arm64 - ids: - - go-feature-flag-migration-cli - dockerfile: ./cmd/migrationcli/Dockerfile - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - build_flag_templates: - - "--platform=linux/arm64/v8" - - "--label=org.opencontainers.image.created={{ .Date }}" - - "--label=org.opencontainers.image.description=A migration command line to move your feature flag configuration file from format GO Feature Flag v0.X to v1.X" - - "--label=org.opencontainers.image.revision={{ .FullCommit }}" - - "--label=org.opencontainers.image.source=https://github.com/thomaspoignant/go-feature-flag" - - "--label=org.opencontainers.image.title=go-feature-flag-migration-cli" - - "--label=org.opencontainers.image.url=https://gofeatureflag.org/docs/tooling/migrate_v0_v1" - - "--label=org.opencontainers.image.version={{ .Version }}" - - use: buildx - goos: linux - goarch: arm - goarm: 7 - ids: - - go-feature-flag-migration-cli - dockerfile: ./cmd/migrationcli/Dockerfile - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - build_flag_templates: - - "--platform=linux/arm/v7" - - "--label=org.opencontainers.image.created={{ .Date }}" - - "--label=org.opencontainers.image.description=A migration command line to move your feature flag configuration file from format GO Feature Flag v0.X to v1.X" - - "--label=org.opencontainers.image.revision={{ .FullCommit }}" - - "--label=org.opencontainers.image.source=https://github.com/thomaspoignant/go-feature-flag" - - "--label=org.opencontainers.image.title=go-feature-flag-migration-cli" - - "--label=org.opencontainers.image.url=https://gofeatureflag.org/docs/tooling/migrate_v0_v1" - - "--label=org.opencontainers.image.version={{ .Version }}" - # lint - use: buildx goos: linux @@ -607,56 +516,6 @@ docker_manifests: - thomaspoignant/go-feature-flag-bookworm:v{{ .RawVersion }}-arm64v8 - thomaspoignant/go-feature-flag-bookworm:v{{ .RawVersion }}-armv7 - thomaspoignant/go-feature-flag-bookworm:v{{ .RawVersion }}-amd64 -# migration-cli-legacy - - name_template: thomaspoignant/go-feature-flag-migration-cli:latest - id: go-feature-flag-migration-cli-latest-legacy - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - - name_template: thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }} - id: go-feature-flag-migration-cli-tag-legacy - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - - name_template: thomaspoignant/go-feature-flag-migration-cli:v{{ .Major }} - id: go-feature-flag-migration-cli-major-legacy - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - - name_template: thomaspoignant/go-feature-flag-migration-cli:v{{ .Major }}.{{ .Minor }} - id: go-feature-flag-migration-cli-major-minor-legacy - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - # migration-cli - - name_template: gofeatureflag/go-feature-flag-migration-cli:latest - id: go-feature-flag-migration-cli-latest - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - - name_template: gofeatureflag/go-feature-flag-migration-cli:v{{ .RawVersion }} - id: go-feature-flag-migration-cli-tag - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - - name_template: gofeatureflag/go-feature-flag-migration-cli:v{{ .Major }} - id: go-feature-flag-migration-cli-major - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 - - name_template: gofeatureflag/go-feature-flag-migration-cli:v{{ .Major }}.{{ .Minor }} - id: go-feature-flag-migration-cli-major-minor - image_templates: - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-arm64v8 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-armv7 - - thomaspoignant/go-feature-flag-migration-cli:v{{ .RawVersion }}-amd64 # lint-legacy - name_template: thomaspoignant/go-feature-flag-lint:latest id: go-feature-flag-lint-latest-legacy @@ -709,17 +568,6 @@ docker_manifests: - thomaspoignant/go-feature-flag-lint:v{{ .RawVersion }}-amd64 brews: - - ids: - - go-feature-flag-migration-cli - name: go-feature-flag-migration-cli - repository: - owner: thomaspoignant - name: homebrew-tap - branch: master - caveats: "A migration command line to move your feature flag configuration file from format GO Feature Flag v0.X to v1.X" - homepage: "https://gofeatureflag.org/docs/tooling/migrate_v0_v1" - description: "A migration command line to move your feature flag configuration file from format GO Feature Flag v0.X to v1.X" - skip_upload: auto # DEPRECATED: check go-feature-flag - ids: - go-feature-flag-relay-proxy @@ -756,17 +604,6 @@ brews: skip_upload: auto scoops: - - - url_template: https://github.com/thomaspoignant/go-feature-flag/releases/download/{{ .Tag }}/{{ .ArtifactName }} - ids: [go-feature-flag-migration-cli ] - name: go-feature-flag-migration-cli - repository: - owner: go-feature-flag - name: scoop - commit_msg_template: "Scoop update for {{ .ProjectName }} version {{ .Tag }}" - homepage: "https://gofeatureflag.org/docs/tooling/migrate_v0_v1" - license: MIT - # DEPRECATED: check go-feature-flag - url_template: https://github.com/thomaspoignant/go-feature-flag/releases/download/{{ .Tag }}/{{ .ArtifactName }} ids: [go-feature-flag-relay-proxy ] diff --git a/cmd/migrationcli/DOCKERHUB.md b/cmd/migrationcli/DOCKERHUB.md deleted file mode 100644 index 555ff341633..00000000000 --- a/cmd/migrationcli/DOCKERHUB.md +++ /dev/null @@ -1,29 +0,0 @@ -# GO Feature Flag Migration cli - -The migration command line purpose is to migrate your configuration file from the flag format in version `v0.x.x` to the format `v1.x.x`. - -We changed the format to extend the capabilities of **GO Feature Flag**, despite that the old format will still be -supported, it is better to update your configuration file. - -## How to use this image - -```shell -docker run \ - -v $(pwd)/your/configuration_folder:/config \ - gofeatureflag/go-feature-flag-migration-cli:latest \ - --input-format=yaml \ - --input-file=/config/my-go-feature-flag-config-v0.x.x.yaml \ - --output-format=yaml \ - --output-file=/config/my-go-feature-flag-config-v1.x.x.yaml -``` - -### Params description - -The command line has 4 parameters: - -| param | description | -|-------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `--input-file` | **(mandatory)** The location of your configuration file in version `v0.x.x`. | -| `--input-format` | **(mandatory)** The format of your current configuration file.
Available formats are `yaml`, `json`, `toml`. | -| `--output-file` | _(optional)_ The location where the new configuration file will be stored in version `v1.x.x`.
_If omitted the configuration will be output in the console._ | -| `--output-format` | _(optional)_ The target format of the configuration.
Available formats are `yaml`, `json`, `toml`.
_If omitted `yaml` will be used._ | diff --git a/cmd/migrationcli/DOCKERHUB_thomaspoignant.md b/cmd/migrationcli/DOCKERHUB_thomaspoignant.md deleted file mode 100644 index ab7a6cd6c4b..00000000000 --- a/cmd/migrationcli/DOCKERHUB_thomaspoignant.md +++ /dev/null @@ -1,31 +0,0 @@ -# GO Feature Flag Migration cli - -🚨 Attention: The GO Feature Flag has now transitioned to its own organization. We recommend updating your configurations to use [`gofeatureflag/go-feature-flag-migration-cli`](https://hub.docker.com/r/gofeatureflag/go-feature-flag-migration-cli:). We will continue to provide support for the original organization for a certain period of time. - -The migration command line purpose is to migrate your configuration file from the flag format in version `v0.x.x` to the format `v1.x.x`. - -We changed the format to extend the capabilities of **GO Feature Flag**, despite that the old format will still be -supported, it is better to update your configuration file. - -## How to use this image - -```shell -docker run \ - -v $(pwd)/your/configuration_folder:/config \ - gofeatureflag/go-feature-flag-migration-cli:latest \ - --input-format=yaml \ - --input-file=/config/my-go-feature-flag-config-v0.x.x.yaml \ - --output-format=yaml \ - --output-file=/config/my-go-feature-flag-config-v1.x.x.yaml -``` - -### Params description - -The command line has 4 parameters: - -| param | description | -|-------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `--input-file` | **(mandatory)** The location of your configuration file in version `v0.x.x`. | -| `--input-format` | **(mandatory)** The format of your current configuration file.
Available formats are `yaml`, `json`, `toml`. | -| `--output-file` | _(optional)_ The location where the new configuration file will be stored in version `v1.x.x`.
_If omitted the configuration will be output in the console._ | -| `--output-format` | _(optional)_ The target format of the configuration.
Available formats are `yaml`, `json`, `toml`.
_If omitted `yaml` will be used._ | diff --git a/website/docs/tooling/migrate_v0_v1.md b/website/docs/tooling/migrate_v0_v1.md index 7e17a8e65ef..ec1bf6c774c 100644 --- a/website/docs/tooling/migrate_v0_v1.md +++ b/website/docs/tooling/migrate_v0_v1.md @@ -3,6 +3,11 @@ sidebar_position: 90 description: How to migrate from v0.x.x to v1.x.x --- +--- +**⚠️ Version `v1.35.0` will be the last version of the cli.**. +**Why? Because it is feature complete and because it has been decided to stop supporting `v0.x.x` format.** +--- + # Migrate from v0.x.x to v1.x.x :::info