mirror of
https://github.com/apricote/releaser-pleaser.git
synced 2026-02-10 19:57:03 +00:00
Compare commits
No commits in common. "dc1903c4b4a839a2f60a141ed222e2819901ec44" and "ee83cec0494a3e756bdac5f769f6a910f66e2546" have entirely different histories.
dc1903c4b4
...
ee83cec049
9 changed files with 4 additions and 175 deletions
28
.github/workflows/mirror.yaml
vendored
28
.github/workflows/mirror.yaml
vendored
|
|
@ -1,28 +0,0 @@
|
|||
name: mirror
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
tags: ["*"]
|
||||
|
||||
jobs:
|
||||
gitlab-com:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
REMOTE: mirror
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
# Need all to fetch all tags so we can push them
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Add Remote
|
||||
env:
|
||||
CLONE_URL: "https://releaser-pleaser:${{ secrets.GITLAB_COM_PUSH_TOKEN }}@gitlab.com/apricote/releaser-pleaser.git"
|
||||
run: git remote add $REMOTE $CLONE_URL
|
||||
|
||||
- name: Push Branches
|
||||
run: git push --force --all --verbose $REMOTE
|
||||
|
||||
- name: Push Tags
|
||||
run: git push --force --tags --verbose $REMOTE
|
||||
1
.github/workflows/releaser-pleaser.yaml
vendored
1
.github/workflows/releaser-pleaser.yaml
vendored
|
|
@ -43,4 +43,3 @@ jobs:
|
|||
token: ${{ secrets.RELEASER_PLEASER_TOKEN }}
|
||||
extra-files: |
|
||||
action.yml
|
||||
templates/run.yml
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
stages: [release]
|
||||
|
||||
# For the GitLab CI/CD component to be usable, it needs to be published in
|
||||
# the CI/CD catalog. This happens on new releases.
|
||||
# As the primary tagging happens on GitHub, we only react to pushed tags
|
||||
# and create a corresponding GitLab Release.
|
||||
create-release:
|
||||
stage: release
|
||||
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
||||
script: echo "Creating release $CI_COMMIT_TAG"
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
release:
|
||||
tag_name: "$CI_COMMIT_TAG"
|
||||
description: "$CI_COMMIT_TAG_MESSAGE"
|
||||
3
.ko.yaml
3
.ko.yaml
|
|
@ -1,6 +1,3 @@
|
|||
defaultPlatforms:
|
||||
- linux/arm64
|
||||
- linux/amd64
|
||||
|
||||
# Need a shell for gitlab-ci
|
||||
defaultBaseImage: cgr.dev/chainguard/busybox
|
||||
|
|
|
|||
23
CHANGELOG.md
23
CHANGELOG.md
|
|
@ -1,28 +1,5 @@
|
|||
# Changelog
|
||||
|
||||
## [v0.4.0-beta.1](https://github.com/apricote/releaser-pleaser/releases/tag/v0.4.0-beta.1)
|
||||
|
||||
### Features
|
||||
|
||||
- add shell to container image (#59)
|
||||
- **gitlab**: add CI/CD component (#55)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- multiple extra-files are not evaluated properly (#61)
|
||||
|
||||
## [v0.4.0-beta.0](https://github.com/apricote/releaser-pleaser/releases/tag/v0.4.0-beta.0)
|
||||
|
||||
### Features
|
||||
|
||||
- add support for GitLab repositories (#49)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **parser**: continue on unparsable commit message (#48)
|
||||
- **cli**: command name in help output (#52)
|
||||
- **parser**: invalid handling of empty lines (#53)
|
||||
|
||||
## [v0.3.0](https://github.com/apricote/releaser-pleaser/releases/tag/v0.3.0)
|
||||
|
||||
### :sparkles: Highlights
|
||||
|
|
|
|||
|
|
@ -21,12 +21,12 @@ inputs:
|
|||
outputs: {}
|
||||
runs:
|
||||
using: 'docker'
|
||||
image: ghcr.io/apricote/releaser-pleaser:v0.4.0-beta.1 # x-releaser-pleaser-version
|
||||
image: ghcr.io/apricote/releaser-pleaser:v0.3.0 # x-releaser-pleaser-version
|
||||
args:
|
||||
- run
|
||||
- --forge=github
|
||||
- --branch=${{ inputs.branch }}
|
||||
- --extra-files="${{ inputs.extra-files }}"
|
||||
- --extra-files=${{ inputs.extra-files }}
|
||||
env:
|
||||
GITHUB_TOKEN: "${{ inputs.token }}"
|
||||
GITHUB_TOKEN: ${{ inputs.token }}
|
||||
GITHUB_USER: "oauth2"
|
||||
|
|
|
|||
|
|
@ -95,12 +95,6 @@ func run(cmd *cobra.Command, _ []string) error {
|
|||
}
|
||||
|
||||
func parseExtraFiles(input string) []string {
|
||||
// We quote the arg to avoid issues with the expected newlines in the value.
|
||||
// Need to remove those quotes before parsing the data
|
||||
input = strings.Trim(input, `"`)
|
||||
// In some situations we get a "\n" sequence, where we actually expect new lines,
|
||||
// replace the two characters with an actual new line
|
||||
input = strings.ReplaceAll(input, `\n`, "\n")
|
||||
lines := strings.Split(input, "\n")
|
||||
|
||||
extraFiles := make([]string, 0, len(lines))
|
||||
|
|
|
|||
|
|
@ -1,59 +0,0 @@
|
|||
package cmd
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func Test_parseExtraFiles(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
input string
|
||||
want []string
|
||||
}{
|
||||
{
|
||||
name: "empty",
|
||||
input: ``,
|
||||
want: []string{},
|
||||
},
|
||||
{
|
||||
name: "empty quoted",
|
||||
input: `""`,
|
||||
want: []string{},
|
||||
},
|
||||
{
|
||||
name: "single",
|
||||
input: `foo.txt`,
|
||||
want: []string{"foo.txt"},
|
||||
},
|
||||
{
|
||||
name: "single quoted",
|
||||
input: `"foo.txt"`,
|
||||
want: []string{"foo.txt"},
|
||||
},
|
||||
{
|
||||
name: "multiple",
|
||||
input: `foo.txt
|
||||
dir/Chart.yaml`,
|
||||
want: []string{"foo.txt", "dir/Chart.yaml"},
|
||||
},
|
||||
{
|
||||
name: "multiple quoted",
|
||||
input: `"foo.txt
|
||||
dir/Chart.yaml"`,
|
||||
want: []string{"foo.txt", "dir/Chart.yaml"},
|
||||
},
|
||||
{
|
||||
name: "multiple with broken new lines",
|
||||
input: `"action.yml\ntemplates/run.yml\n"`,
|
||||
want: []string{"action.yml", "templates/run.yml"},
|
||||
},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
got := parseExtraFiles(tt.input)
|
||||
assert.Equal(t, tt.want, got)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
spec:
|
||||
inputs:
|
||||
# Remember to update docs/reference/gitlab-ci-component.md
|
||||
branch:
|
||||
default: main
|
||||
description: "This branch is used as the target for releases."
|
||||
|
||||
token:
|
||||
description: "GitLab token for creating and updating release MRs."
|
||||
|
||||
extra-files:
|
||||
description: 'List of files that are scanned for version references.'
|
||||
default: ""
|
||||
|
||||
stage:
|
||||
default: build
|
||||
description: 'Defines the build stage'
|
||||
# Remember to update docs/reference/gitlab-ci-component.md
|
||||
---
|
||||
|
||||
releaser-pleaser:
|
||||
stage: $[[ inputs.stage ]]
|
||||
rules:
|
||||
# There is no way to run a pipeline when the MR description is updated :(
|
||||
- if: $CI_COMMIT_BRANCH == "$[[ inputs.branch ]]"
|
||||
image:
|
||||
name: ghcr.io/apricote/releaser-pleaser:v0.4.0-beta.1 # x-releaser-pleaser-version
|
||||
entrypoint: [""]
|
||||
variables:
|
||||
GITLAB_TOKEN: $[[ inputs.token ]]
|
||||
script:
|
||||
- |
|
||||
rp run \
|
||||
--forge=gitlab \
|
||||
--branch=$[[ inputs.branch ]] \
|
||||
--extra-files="$[[ inputs.extra-files ]]"
|
||||
Loading…
Add table
Add a link
Reference in a new issue