Skip to content

Commit

Permalink
Replace DRONE_ with CI_ variables in pipeline steps (#427)
Browse files Browse the repository at this point in the history
Dropped support for `DRONE_*` environment variables in pipeline steps. Pipeline meta-data can be accessed with `CI_*` variables.
  - `CI_*` prefix replaces `DRONE_*`
  - `CI` value is now `woodpecker`
  - `DRONE=true` has been removed
  • Loading branch information
anbraten committed Nov 25, 2021
1 parent ff8ad5b commit 063d0bb
Show file tree
Hide file tree
Showing 37 changed files with 437 additions and 1,105 deletions.
2 changes: 1 addition & 1 deletion .woodpecker/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ pipeline:
- git add .
# exit successfully if nothing changed
- test -n "$(git status --porcelain)" || exit 0
- git commit -m "Deploy website - based on ${DRONE_COMMIT_SHA}"
- git commit -m "Deploy website - based on ${CI_COMMIT_SHA}"
- git push
when:
event: push
Expand Down
2 changes: 1 addition & 1 deletion .woodpecker/helm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ pipeline:
image: alpine/helm:3.5.3
commands:
# use tag name or 0.0.0 if not running on a tag
- export CHART_VERSION="${DRONE_TAG##v}"
- export CHART_VERSION="${CI_COMMIT_TAG##v}"
- export CHART_VERSION=$${CHART_VERSION:=0.0.0}
- echo "Version $CHART_VERSION"
- sed -i "s/<version>/$CHART_VERSION/g" charts/woodpecker-agent/Chart.yaml
Expand Down
14 changes: 7 additions & 7 deletions .woodpecker/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ pipeline:
repo: woodpeckerci/woodpecker-server
dockerfile: docker/Dockerfile.server
secrets: [docker_username, docker_password]
tag: [latest, "${DRONE_TAG}"]
tag: [latest, "${CI_COMMIT_TAG}"]
when:
event: tag

Expand All @@ -202,7 +202,7 @@ pipeline:
repo: woodpeckerci/woodpecker-server
dockerfile: docker/Dockerfile.server.alpine
secrets: [ docker_username, docker_password ]
tag: [latest-alpine, "${DRONE_TAG}-alpine"]
tag: [latest-alpine, "${CI_COMMIT_TAG}-alpine"]
when:
event: tag

Expand All @@ -212,7 +212,7 @@ pipeline:
repo: woodpeckerci/woodpecker-agent
dockerfile: docker/Dockerfile.agent
secrets: [docker_username, docker_password]
tag: [latest, "${DRONE_TAG}"]
tag: [latest, "${CI_COMMIT_TAG}"]
when:
event: tag

Expand All @@ -222,7 +222,7 @@ pipeline:
repo: woodpeckerci/woodpecker-agent
dockerfile: docker/Dockerfile.agent.alpine
secrets: [ docker_username, docker_password ]
tag: [latest-alpine, "${DRONE_TAG}-alpine"]
tag: [latest-alpine, "${CI_COMMIT_TAG}-alpine"]
when:
event: tag

Expand All @@ -232,7 +232,7 @@ pipeline:
repo: woodpeckerci/woodpecker-cli
dockerfile: docker/Dockerfile.cli
secrets: [docker_username, docker_password]
tag: [latest, "${DRONE_TAG}"]
tag: [latest, "${CI_COMMIT_TAG}"]
when:
event: tag

Expand All @@ -242,7 +242,7 @@ pipeline:
repo: woodpeckerci/woodpecker-cli
dockerfile: docker/Dockerfile.cli.alpine
secrets: [ docker_username, docker_password ]
tag: [latest-alpine, "${DRONE_TAG}-alpine"]
tag: [latest-alpine, "${CI_COMMIT_TAG}-alpine"]
when:
event: tag

Expand All @@ -262,7 +262,7 @@ pipeline:
- dist/*.deb
- dist/*.rpm
- dist/checksums.txt
title: ${DRONE_TAG##v}
title: ${CI_COMMIT_TAG##v}
secrets:
- source: github_token
target: github_release_api_key
Expand Down
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ GOFILES_NOVENDOR = $(shell find . -type f -name '*.go' -not -path "./vendor/*" -
GO_PACKAGES ?= $(shell go list ./... | grep -v /vendor/)

VERSION ?= next
ifneq ($(DRONE_TAG),)
VERSION := $(DRONE_TAG:v%=%)
ifneq ($(CI_COMMIT_TAG),)
VERSION := $(CI_COMMIT_TAG:v%=%)
endif

# append commit-sha to next version
BUILD_VERSION := $(VERSION)
ifeq ($(BUILD_VERSION),next)
BUILD_VERSION := $(shell echo "next-$(shell echo ${DRONE_COMMIT_SHA} | head -c 8)")
BUILD_VERSION := $(shell echo "next-$(shell echo ${CI_COMMIT_SHA} | head -c 8)")
endif

LDFLAGS := -s -w -extldflags "-static" -X github.com/woodpecker-ci/woodpecker/version.Version=${BUILD_VERSION}
Expand Down
15 changes: 4 additions & 11 deletions agent/runner.go
Original file line number Diff line number Diff line change
Expand Up @@ -270,26 +270,19 @@ func (r *Runner) Run(ctx context.Context) error {
state.Pipeline.Step.Environment = map[string]string{}
}

state.Pipeline.Step.Environment["DRONE_MACHINE"] = r.hostname
// TODO: find better way to update this state
state.Pipeline.Step.Environment["CI_MACHINE"] = r.hostname
state.Pipeline.Step.Environment["CI_BUILD_STATUS"] = "success"
state.Pipeline.Step.Environment["CI_BUILD_STARTED"] = strconv.FormatInt(state.Pipeline.Time, 10)
state.Pipeline.Step.Environment["CI_BUILD_FINISHED"] = strconv.FormatInt(time.Now().Unix(), 10)
state.Pipeline.Step.Environment["DRONE_BUILD_STATUS"] = "success"
state.Pipeline.Step.Environment["DRONE_BUILD_STARTED"] = strconv.FormatInt(state.Pipeline.Time, 10)
state.Pipeline.Step.Environment["DRONE_BUILD_FINISHED"] = strconv.FormatInt(time.Now().Unix(), 10)

state.Pipeline.Step.Environment["CI_JOB_STATUS"] = "success"
state.Pipeline.Step.Environment["CI_JOB_STARTED"] = strconv.FormatInt(state.Pipeline.Time, 10)
state.Pipeline.Step.Environment["CI_JOB_FINISHED"] = strconv.FormatInt(time.Now().Unix(), 10)
state.Pipeline.Step.Environment["DRONE_JOB_STATUS"] = "success"
state.Pipeline.Step.Environment["DRONE_JOB_STARTED"] = strconv.FormatInt(state.Pipeline.Time, 10)
state.Pipeline.Step.Environment["DRONE_JOB_FINISHED"] = strconv.FormatInt(time.Now().Unix(), 10)

if state.Pipeline.Error != nil {
state.Pipeline.Step.Environment["CI_BUILD_STATUS"] = "failure"
state.Pipeline.Step.Environment["CI_JOB_STATUS"] = "failure"
state.Pipeline.Step.Environment["DRONE_BUILD_STATUS"] = "failure"
state.Pipeline.Step.Environment["DRONE_JOB_STATUS"] = "failure"
}
return nil
})
Expand Down Expand Up @@ -344,10 +337,10 @@ func (r *Runner) Run(ctx context.Context) error {

// extract repository name from the configuration
func extractRepositoryName(config *backend.Config) string {
return config.Stages[0].Steps[0].Environment["DRONE_REPO"]
return config.Stages[0].Steps[0].Environment["CI_REPO"]
}

// extract build number from the configuration
func extractBuildNumber(config *backend.Config) string {
return config.Stages[0].Steps[0].Environment["DRONE_BUILD_NUMBER"]
return config.Stages[0].Steps[0].Environment["CI_BUILD_NUMBER"]
}
3 changes: 0 additions & 3 deletions cli/exec/exec.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,6 @@ func execWithAxis(c *cli.Context, axis matrix.Axis) error {
metadata := metadataFromContext(c, axis)
environ := metadata.Environ()
var secrets []compiler.Secret
for k, v := range metadata.EnvironDrone() {
environ[k] = v
}
for key, val := range metadata.Job.Matrix {
environ[key] = val
secrets = append(secrets, compiler.Secret{
Expand Down
92 changes: 46 additions & 46 deletions cli/exec/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,198 +69,198 @@ var flags = []cli.Flag{
// workspace default
//
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_WORKSPACE_BASE"},
EnvVars: []string{"CI_WORKSPACE_BASE"},
Name: "workspace-base",
Value: "/woodpecker",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_WORKSPACE_PATH"},
EnvVars: []string{"CI_WORKSPACE_PATH"},
Name: "workspace-path",
Value: "src",
},
//
// netrc parameters
//
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_NETRC_USERNAME"},
EnvVars: []string{"CI_NETRC_USERNAME"},
Name: "netrc-username",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_NETRC_PASSWORD"},
EnvVars: []string{"CI_NETRC_PASSWORD"},
Name: "netrc-password",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_NETRC_MACHINE"},
EnvVars: []string{"CI_NETRC_MACHINE"},
Name: "netrc-machine",
},
//
// metadata parameters
//
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_SYSTEM_ARCH"},
EnvVars: []string{"CI_SYSTEM_ARCH"},
Name: "system-arch",
Value: "linux/amd64",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_SYSTEM_NAME"},
EnvVars: []string{"CI_SYSTEM_NAME"},
Name: "system-name",
Value: "pipec",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_SYSTEM_LINK"},
EnvVars: []string{"CI_SYSTEM_LINK"},
Name: "system-link",
Value: "https://github.com/cncd/pipec",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_REPO_NAME"},
EnvVars: []string{"CI_REPO_NAME"},
Name: "repo-name",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_REPO_LINK"},
EnvVars: []string{"CI_REPO_LINK"},
Name: "repo-link",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_REPO_REMOTE"},
EnvVars: []string{"CI_REPO_REMOTE"},
Name: "repo-remote-url",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_REPO_PRIVATE"},
EnvVars: []string{"CI_REPO_PRIVATE"},
Name: "repo-private",
},
&cli.IntFlag{
EnvVars: []string{"WOODPECKER_BUILD_NUMBER"},
EnvVars: []string{"CI_BUILD_NUMBER"},
Name: "build-number",
},
&cli.IntFlag{
EnvVars: []string{"WOODPECKER_PARENT_BUILD_NUMBER"},
EnvVars: []string{"CI_PARENT_BUILD_NUMBER"},
Name: "parent-build-number",
},
&cli.Int64Flag{
EnvVars: []string{"WOODPECKER_BUILD_CREATED"},
EnvVars: []string{"CI_BUILD_CREATED"},
Name: "build-created",
},
&cli.Int64Flag{
EnvVars: []string{"WOODPECKER_BUILD_STARTED"},
EnvVars: []string{"CI_BUILD_STARTED"},
Name: "build-started",
},
&cli.Int64Flag{
EnvVars: []string{"WOODPECKER_BUILD_FINISHED"},
EnvVars: []string{"CI_BUILD_FINISHED"},
Name: "build-finished",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_BUILD_STATUS"},
EnvVars: []string{"CI_BUILD_STATUS"},
Name: "build-status",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_BUILD_EVENT"},
EnvVars: []string{"CI_BUILD_EVENT"},
Name: "build-event",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_BUILD_LINK"},
EnvVars: []string{"CI_BUILD_LINK"},
Name: "build-link",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_BUILD_TARGET"},
EnvVars: []string{"CI_BUILD_TARGET"},
Name: "build-target",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_SHA"},
EnvVars: []string{"CI_COMMIT_SHA"},
Name: "commit-sha",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_REF"},
EnvVars: []string{"CI_COMMIT_REF"},
Name: "commit-ref",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_REFSPEC"},
EnvVars: []string{"CI_COMMIT_REFSPEC"},
Name: "commit-refspec",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_BRANCH"},
EnvVars: []string{"CI_COMMIT_BRANCH"},
Name: "commit-branch",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_MESSAGE"},
EnvVars: []string{"CI_COMMIT_MESSAGE"},
Name: "commit-message",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_AUTHOR_NAME"},
EnvVars: []string{"CI_COMMIT_AUTHOR_NAME"},
Name: "commit-author-name",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_AUTHOR_AVATAR"},
EnvVars: []string{"CI_COMMIT_AUTHOR_AVATAR"},
Name: "commit-author-avatar",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_COMMIT_AUTHOR_EMAIL"},
EnvVars: []string{"CI_COMMIT_AUTHOR_EMAIL"},
Name: "commit-author-email",
},
&cli.IntFlag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_NUMBER"},
EnvVars: []string{"CI_PREV_BUILD_NUMBER"},
Name: "prev-build-number",
},
&cli.Int64Flag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_CREATED"},
EnvVars: []string{"CI_PREV_BUILD_CREATED"},
Name: "prev-build-created",
},
&cli.Int64Flag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_STARTED"},
EnvVars: []string{"CI_PREV_BUILD_STARTED"},
Name: "prev-build-started",
},
&cli.Int64Flag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_FINISHED"},
EnvVars: []string{"CI_PREV_BUILD_FINISHED"},
Name: "prev-build-finished",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_STATUS"},
EnvVars: []string{"CI_PREV_BUILD_STATUS"},
Name: "prev-build-status",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_EVENT"},
EnvVars: []string{"CI_PREV_BUILD_EVENT"},
Name: "prev-build-event",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_BUILD_LINK"},
EnvVars: []string{"CI_PREV_BUILD_LINK"},
Name: "prev-build-link",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_SHA"},
EnvVars: []string{"CI_PREV_COMMIT_SHA"},
Name: "prev-commit-sha",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_REF"},
EnvVars: []string{"CI_PREV_COMMIT_REF"},
Name: "prev-commit-ref",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_REFSPEC"},
EnvVars: []string{"CI_PREV_COMMIT_REFSPEC"},
Name: "prev-commit-refspec",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_BRANCH"},
EnvVars: []string{"CI_PREV_COMMIT_BRANCH"},
Name: "prev-commit-branch",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_MESSAGE"},
EnvVars: []string{"CI_PREV_COMMIT_MESSAGE"},
Name: "prev-commit-message",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_AUTHOR_NAME"},
EnvVars: []string{"CI_PREV_COMMIT_AUTHOR_NAME"},
Name: "prev-commit-author-name",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_AUTHOR_AVATAR"},
EnvVars: []string{"CI_PREV_COMMIT_AUTHOR_AVATAR"},
Name: "prev-commit-author-avatar",
},
&cli.StringFlag{
EnvVars: []string{"WOODPECKER_PREV_COMMIT_AUTHOR_EMAIL"},
EnvVars: []string{"CI_PREV_COMMIT_AUTHOR_EMAIL"},
Name: "prev-commit-author-email",
},
&cli.IntFlag{
EnvVars: []string{"WOODPECKER_JOB_NUMBER"},
EnvVars: []string{"CI_JOB_NUMBER"},
Name: "job-number",
},
&cli.StringSliceFlag{
EnvVars: []string{"WOODPECKER_ENV"},
EnvVars: []string{"CI_ENV"},
Name: "env",
},
}
Loading

0 comments on commit 063d0bb

Please sign in to comment.