learndrone/.woodpecker.yml
Pedro Pérez cf4ee051bb
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
add test
2025-05-30 01:05:36 +02:00

47 lines
1.3 KiB
YAML

when:
- event: push
branch: main
steps:
go-test:
image: golang:1.24
environment:
CGO_ENABLED: 0
GOOS: linux
GOARCH: amd64
commands:
- go test ./...
go-build:
image: golang:1.24
environment:
CGO_ENABLED: 0
GOOS: linux
GOARCH: amd64
commands:
- mkdir -p ./tmp
- go get
- echo "Building project version $(grep 'version =' main.go | cut -d'"' -f2)"
- go build -o ./tmp/learndrone ./main.go
docker-build:
image: docker:23
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /containers/learndrone:/containers/learndrone
commands:
- VERSION=$(grep 'version =' main.go | cut -d'"' -f2)
- echo "Packing Docker image version $VERSION"
- docker build -t learndrone:$VERSION -t learndrone:latest .
- docker save learndrone:latest -o /containers/learndrone/learndrone_latest.tar
deploy:
image: docker:23
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /containers/learndrone:/containers/learndrone
commands:
- docker load -i /containers/learndrone/learndrone_latest.tar
- rm /containers/learndrone/learndrone_latest.tar
- docker-compose down
- docker-compose up -d