mirror of
https://github.com/jimeh/casecmp.git
synced 2026-02-19 10:26:40 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
732c588dbc
|
|||
|
1816e93170
|
|||
|
29902b2e8e
|
|||
|
36e0863cc3
|
|||
|
5471ff95a7
|
|||
|
4c89c92f75
|
|||
| d19eed020c | |||
|
aef3e832f5
|
@@ -1,57 +0,0 @@
|
||||
version: 2
|
||||
jobs:
|
||||
build:
|
||||
docker:
|
||||
- image: circleci/golang:1.16
|
||||
working_directory: /go/src/github.com/jimeh/casecmp
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: Install dependencies
|
||||
command: go mod download
|
||||
- run:
|
||||
name: Build binary
|
||||
command: make
|
||||
- run:
|
||||
name: Start service
|
||||
command: ./bin/casecmp --port=8080
|
||||
background: true
|
||||
- run:
|
||||
name: Validate service is working
|
||||
command: |
|
||||
curl --retry 10 --retry-delay 1 --retry-connrefused \
|
||||
http://localhost:8080/
|
||||
release:
|
||||
docker:
|
||||
- image: circleci/golang:1.16
|
||||
working_directory: /go/src/github.com/jimeh/casecmp
|
||||
steps:
|
||||
- checkout
|
||||
- run: curl -sL https://git.io/goreleaser | bash
|
||||
|
||||
workflows:
|
||||
version: 2
|
||||
build:
|
||||
jobs:
|
||||
- build:
|
||||
filters:
|
||||
branches:
|
||||
only: /.*/
|
||||
tags:
|
||||
ignore: /^v[0-9]+(\.[0-9]+)*/
|
||||
build-and-release:
|
||||
jobs:
|
||||
- build:
|
||||
filters:
|
||||
branches:
|
||||
ignore: /.*/
|
||||
tags:
|
||||
only: /^v[0-9]+(\.[0-9]+)*/
|
||||
- release:
|
||||
requires:
|
||||
- build
|
||||
filters:
|
||||
branches:
|
||||
ignore: /.*/
|
||||
tags:
|
||||
only: /^v[0-9]+(\.[0-9]+)*/
|
||||
48
.github/workflows/ci.yml
vendored
Normal file
48
.github/workflows/ci.yml
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
name: CI
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: 1.16
|
||||
- name: Install dependencies
|
||||
run: go mod download
|
||||
- name: Build binary
|
||||
run: make
|
||||
- name: Run and make request
|
||||
run: |
|
||||
./bin/casecmp --port=8080 &
|
||||
curl --silent --retry 10 --retry-delay 1 --retry-connrefused \
|
||||
http://localhost:8080/
|
||||
|
||||
release:
|
||||
name: Release
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build]
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
- name: Docker Login
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: 1.16
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@v2
|
||||
with:
|
||||
version: latest
|
||||
args: release --rm-dist
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
@@ -10,17 +10,18 @@ builds:
|
||||
ldflags:
|
||||
- "-s -w -X main.version={{ .Version }} -X main.commit={{ .Commit }}"
|
||||
goos:
|
||||
- darwin
|
||||
- freebsd
|
||||
- linux
|
||||
- windows
|
||||
- "darwin"
|
||||
- "freebsd"
|
||||
- "linux"
|
||||
- "windows"
|
||||
goarch:
|
||||
- amd64
|
||||
- 386
|
||||
- arm
|
||||
- "amd64"
|
||||
- "386"
|
||||
- "arm"
|
||||
- "arm64"
|
||||
goarm:
|
||||
- 6
|
||||
- 7
|
||||
- "6"
|
||||
- "7"
|
||||
|
||||
archives:
|
||||
- format: tar.gz
|
||||
@@ -30,12 +31,6 @@ archives:
|
||||
format_overrides:
|
||||
- goos: windows
|
||||
format: zip
|
||||
replacements:
|
||||
darwin: Darwin
|
||||
linux: Linux
|
||||
windows: Windows
|
||||
386: i386
|
||||
amd64: x86_64
|
||||
|
||||
checksum:
|
||||
name_template: "checksums.txt"
|
||||
@@ -47,3 +42,68 @@ changelog:
|
||||
exclude:
|
||||
- "^docs:"
|
||||
- "^test:"
|
||||
|
||||
dockers:
|
||||
- image_templates:
|
||||
- "ghcr.io/jimeh/casecmp:{{ .Version }}-amd64"
|
||||
- "ghcr.io/jimeh/casecmp:latest-amd64"
|
||||
dockerfile: Dockerfile
|
||||
use: buildx
|
||||
goos: linux
|
||||
goarch: amd64
|
||||
build_flag_templates:
|
||||
- "--platform=linux/amd64"
|
||||
- image_templates:
|
||||
- "ghcr.io/jimeh/casecmp:{{ .Version }}-386"
|
||||
- "ghcr.io/jimeh/casecmp:latest-386"
|
||||
dockerfile: Dockerfile
|
||||
use: buildx
|
||||
goos: linux
|
||||
goarch: "386"
|
||||
build_flag_templates:
|
||||
- "--platform=linux/386"
|
||||
- image_templates:
|
||||
- "ghcr.io/jimeh/casecmp:{{ .Version }}-arm64"
|
||||
- "ghcr.io/jimeh/casecmp:latest-arm64"
|
||||
use: buildx
|
||||
goos: linux
|
||||
goarch: arm64
|
||||
dockerfile: Dockerfile
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm64"
|
||||
- image_templates:
|
||||
- "ghcr.io/jimeh/casecmp:{{ .Version }}-armv6"
|
||||
- "ghcr.io/jimeh/casecmp:latest-armv6"
|
||||
use: buildx
|
||||
goos: linux
|
||||
goarch: arm
|
||||
goarm: "6"
|
||||
dockerfile: Dockerfile
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm/v6"
|
||||
- image_templates:
|
||||
- "ghcr.io/jimeh/casecmp:{{ .Version }}-armv7"
|
||||
- "ghcr.io/jimeh/casecmp:latest-armv7"
|
||||
use: buildx
|
||||
goos: linux
|
||||
goarch: arm
|
||||
goarm: "7"
|
||||
dockerfile: Dockerfile
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm/v7"
|
||||
|
||||
docker_manifests:
|
||||
- name_template: ghcr.io/jimeh/casecmp:{{ .Version }}
|
||||
image_templates:
|
||||
- ghcr.io/jimeh/casecmp:{{ .Version }}-amd64
|
||||
- ghcr.io/jimeh/casecmp:{{ .Version }}-386
|
||||
- ghcr.io/jimeh/casecmp:{{ .Version }}-arm64
|
||||
- ghcr.io/jimeh/casecmp:{{ .Version }}-armv6
|
||||
- ghcr.io/jimeh/casecmp:{{ .Version }}-armv7
|
||||
- name_template: ghcr.io/jimeh/casecmp:latest
|
||||
image_templates:
|
||||
- ghcr.io/jimeh/casecmp:latest-amd64
|
||||
- ghcr.io/jimeh/casecmp:latest-386
|
||||
- ghcr.io/jimeh/casecmp:latest-arm64
|
||||
- ghcr.io/jimeh/casecmp:latest-armv6
|
||||
- ghcr.io/jimeh/casecmp:latest-armv7
|
||||
|
||||
10
CHANGELOG.md
Normal file
10
CHANGELOG.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
## [1.3.0](https://github.com/jimeh/casecmp/compare/v1.2.3...v1.3.0) (2022-02-13)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **release:** setup for publishing docker images to ghcr ([1816e93](https://github.com/jimeh/casecmp/commit/1816e93170bb725f8da073b91070a981dd039fad))
|
||||
14
Dockerfile
14
Dockerfile
@@ -1,17 +1,5 @@
|
||||
FROM golang:1.16-alpine as builder
|
||||
RUN apk add --no-cache \
|
||||
git
|
||||
|
||||
WORKDIR /app
|
||||
COPY . /app
|
||||
RUN env CGO_ENABLED=0 \
|
||||
go build -a -o /casecmp -ldflags "-s -w \
|
||||
-X main.version=$(cat VERSION) \
|
||||
-X main.commit=$(git show --format='%h' --no-patch) \
|
||||
-X main.date=$(date +%Y-%m-%dT%T%z)"
|
||||
|
||||
FROM scratch
|
||||
COPY --from=builder /casecmp /
|
||||
COPY ./casecmp /
|
||||
ENV PORT 8080
|
||||
EXPOSE 8080
|
||||
WORKDIR /
|
||||
|
||||
Reference in New Issue
Block a user