Skip to content

Commit

Permalink
feat: apply new repo structure and build versioned tag
Browse files Browse the repository at this point in the history
  • Loading branch information
tboerger committed Jun 20, 2024
1 parent 395eb3a commit 2b91602
Show file tree
Hide file tree
Showing 30 changed files with 875 additions and 263 deletions.
44 changes: 43 additions & 1 deletion .github/renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,47 @@
"extends": [
"github>dockhippie/.github//renovate/preset"
],
"packageRules": []
"packageRules": [
{
"description": "Update golang docker images",
"datasources": [
"docker"
],
"updateTypes": [
"major",
"minor"
],
"enabled": true,
"automerge": true
},
{
"description": "Update tags without merge",
"datasources": [
"github-tags"
],
"updateTypes": [
"major",
"minor"
],
"enabled": false,
"automerge": false,
"matchPackageNames": [
"vulcand/vulcand"
]
},
{
"description": "Update tags without merge",
"datasources": [
"github-tags"
],
"updateTypes": [
"patch"
],
"enabled": true,
"automerge": true,
"matchPackageNames": [
"vulcand/vulcand"
]
}
]
}
3 changes: 2 additions & 1 deletion .github/settings.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
repository:
name: vulcand
description: Docker images for Vulcand
description: Docker images for vulcand
topics: docker, image

private: false
Expand Down
159 changes: 159 additions & 0 deletions .github/workflows/v0.9.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
---
name: v0.9

"on":
push:
branches:
- master
paths:
- v0.9/*
- .github/workflows/v0.9.yml
pull_request:
branches:
- master
paths:
- v0.9/*
- .github/workflows/v0.9.yml
workflow_dispatch:

jobs:
docker:
runs-on: ubuntu-latest

steps:
- name: Checkout source
id: source
uses: actions/checkout@v4

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
images: |
webhippie/vulcand
quay.io/webhippie/vulcand
ghcr.io/dockhippie/vulcand
labels: |
org.opencontainers.image.vendor=Webhippie
maintainer=Thomas Boerger <[email protected]>
- name: Setup QEMU
id: qemu
uses: docker/setup-qemu-action@v3

- name: Setup Buildx
id: buildx
uses: docker/setup-buildx-action@v3

- name: Hub login
id: login1
uses: docker/login-action@v3
if: github.event_name != 'pull_request'
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Quay login
id: login2
uses: docker/login-action@v3
if: github.event_name != 'pull_request'
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}

- name: Ghcr login
id: login3
uses: docker/login-action@v3
if: github.event_name != 'pull_request'
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build amd64
id: amd64
uses: docker/build-push-action@v6
with:
builder: ${{ steps.buildx.outputs.name }}
context: v0.9/
provenance: false
file: v0.9/Dockerfile.amd64
platforms: linux/amd64
push: ${{ github.event_name != 'pull_request' }}
labels: ${{ steps.meta.outputs.labels }}
tags: |
webhippie/vulcand:0.9-amd64
quay.io/webhippie/vulcand:0.9-amd64
ghcr.io/dockhippie/vulcand:0.9-amd64
- name: Build arm64
id: arm64
uses: docker/build-push-action@v6
with:
builder: ${{ steps.buildx.outputs.name }}
context: v0.9/
provenance: false
file: v0.9/Dockerfile.arm64
platforms: linux/arm64
push: ${{ github.event_name != 'pull_request' }}
labels: ${{ steps.meta.outputs.labels }}
tags: |
webhippie/vulcand:0.9-arm64
quay.io/webhippie/vulcand:0.9-arm64
ghcr.io/dockhippie/vulcand:0.9-arm64
- name: Build arm
id: arm
uses: docker/build-push-action@v6
with:
builder: ${{ steps.buildx.outputs.name }}
context: v0.9/
provenance: false
file: v0.9/Dockerfile.arm
platforms: linux/arm/v6
push: ${{ github.event_name != 'pull_request' }}
labels: ${{ steps.meta.outputs.labels }}
tags: |
webhippie/vulcand:0.9-arm
quay.io/webhippie/vulcand:0.9-arm
ghcr.io/dockhippie/vulcand:0.9-arm
- name: Hub manifest
id: manifest1
uses: actionhippie/manifest@v1
if: github.event_name != 'pull_request'
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
platforms: linux/amd64,linux/arm64,linux/arm/v6
template: webhippie/vulcand:0.9-ARCH
target: webhippie/vulcand:0.9
ignore_missing: true

- name: Quay manifest
id: manifest2
uses: actionhippie/manifest@v1
if: github.event_name != 'pull_request'
with:
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
platforms: linux/amd64,linux/arm64,linux/arm/v6
template: quay.io/webhippie/vulcand:0.9-ARCH
target: quay.io/webhippie/vulcand:0.9
ignore_missing: true

- name: Ghcr manifest
id: manifest3
uses: actionhippie/manifest@v1
if: github.event_name != 'pull_request'
with:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
platforms: linux/amd64,linux/arm64,linux/arm/v6
template: ghcr.io/dockhippie/vulcand:0.9-ARCH
target: ghcr.io/dockhippie/vulcand:0.9
ignore_missing: true

...
32 changes: 0 additions & 32 deletions Dockerfile

This file was deleted.

2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2015-2017 Thomas Boerger <[email protected]>
Copyright (c) 2015 Thomas Boerger <[email protected]>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
96 changes: 53 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,76 +1,86 @@
# Vulcand
# vulcand

[![](https://images.microbadger.com/badges/image/webhippie/vulcand.svg)](https://microbadger.com/images/webhippie/vulcand "Get your own image badge on microbadger.com")

These are docker images for [Vulcand](https://github.com/mailgun/vulcand) running on an [Alpine Linux container](https://registry.hub.docker.com/u/webhippie/alpine/).
[![Docker Build](https://github.com/dockhippie/vulcand/actions/workflows/docker.yml/badge.svg)](https://github.com/dockhippie/vulcand/actions/workflows/docker.yml) [![GitHub Repo](https://img.shields.io/badge/github-repo-yellowgreen)](https://github.com/dockhippie/vulcand)

These are docker images for [Vulcand][upstream] running on our
[Alpine Linux image][parent].

## Versions

* [latest](https://github.com/dockhippie/vulcand/tree/master) available as ```webhippie/vulcand:latest``` at [Docker Hub](https://registry.hub.docker.com/u/webhippie/vulcand/)

For the available versions please look at [Docker Hub][dockerhub] or
[Quay][quayio] or check the existing folders within the
[GitHub repository][github].

## Volumes

* None

* None

## Ports

* 8181
* 8182

* 8181
* 8182

## Available environment variables

```bash
ENV VULCAND_API_INTERFACE
ENV VULCAND_CERTPATH # As string or filename
ENV VULCAND_ENDPOINT_DIALTIMEOUT 5s
ENV VULCAND_ENDPOINT_READTIMEOUT 50s
ENV VULCAND_ETCD
ENV VULCAND_ETCD_CAFILE # As string or filename
ENV VULCAND_ETCD_CERTFILE # As string or filename
ENV VULCAND_ETCD_KEYFILE # As string or filename
ENV VULCAND_ETCD_CONSISTENCY STRONG
ENV VULCAND_ETCD_KEY vulcand
ENV VULCAND_INTERFACE
ENV VULCAND_LOG console
ENV VULCAND_LOG_SEVERITY WARN
ENV VULCAND_READTIMEOUT 1m0s
ENV VULCAND_SEALKEY
ENV VULCAND_SERVER_MAXHEADERBYTES 1048576
ENV VULCAND_SERVER_READTIMEOUT 1m0s
ENV VULCAND_SERVER_WRITETIMEOUT 1m0s
ENV VULCAND_STATSD_ADDR
ENV VULCAND_STATSD_PREFIX
```console
VULCAND_ALIASES =
VULCAND_CERTPATH =
VULCAND_DEBUG_JAEGER_TRACING = false
VULCAND_DEFAULT_LISTENER = true
VULCAND_ENABLE_JAEGER_TRACING = false
VULCAND_ENDPOINT_DIAL_TIMEOUT =
VULCAND_ENDPOINT_READ_TIMEOUT =
VULCAND_ENGINE = etcd
VULCAND_ETCD = http://etcd:2379
VULCAND_ETCD_API_VERSION = 3
VULCAND_ETCD_CA_FILE =
VULCAND_ETCD_CERT_FILE =
VULCAND_ETCD_CONSISTENCY = STRONG
VULCAND_ETCD_DEBUG = false
VULCAND_ETCD_ENABLE_TLS = false
VULCAND_ETCD_INSECURE_SKIP_VERIFY = false
VULCAND_ETCD_KEY = vulcand
VULCAND_ETCD_KEY_FILE =
VULCAND_ETCD_PASSWORD =
VULCAND_ETCD_SYNC_INTERVAL_SECONDS =
VULCAND_ETCD_USERNAME =
VULCAND_HEALTHCHECK_CODE = 200
VULCAND_HEALTHCHECK_URL = http://localhost:8182/v2/status
VULCAND_LOG_SEVERITY = warning
VULCAND_MEM_PROFILE_RATE =
VULCAND_SEAL_KEY =
VULCAND_SERVER_MAX_HEADER_BYTES =
VULCAND_SERVER_READ_TIMEOUT =
VULCAND_SERVER_WRITE_TIMEOUT =
VULCAND_STATSD_ADDR =
VULCAND_STATSD_PREFIX =
VULCAND_TRUST_FORWARD_HEADER = false
```


## Inherited environment variables

```bash
ENV CRON_ENABLED false
```

* [webhippie/alpine](https://github.com/dockhippie/alpine#available-environment-variables)

## Contributing

Fork -> Patch -> Push -> Pull Request


## Authors

* [Thomas Boerger](https://github.com/tboerger)

* [Thomas Boerger](https://github.com/tboerger)

## License

MIT


## Copyright

```console
Copyright (c) 2015 Thomas Boerger <http://www.webhippie.de>
```
Copyright (c) 2015-2017 Thomas Boerger <http://www.webhippie.de>
```

[upstream]: https://github.com/vulcand/vulcand
[parent]: https://github.com/dockhippie/alpine
[dockerhub]: https://hub.docker.com/r/webhippie/vulcand/tags
[quayio]: https://quay.io/repository/webhippie/vulcand?tab=tags
[github]: https://github.com/dockhippie/vulcand
Loading

0 comments on commit 2b91602

Please sign in to comment.