Skip to content

Commit 0354c2c

Browse files
v1.0.0 Merge
v1.0.0 Merge
2 parents b14186a + 8108846 commit 0354c2c

20 files changed

+152
-160
lines changed

.dockerignore

Lines changed: 0 additions & 10 deletions
This file was deleted.

.flake8

Lines changed: 0 additions & 2 deletions
This file was deleted.

.travis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ addons:
1111
- docker-ce
1212

1313
script:
14-
- pip install flake8 && flake8 *.py pyouroboros/
15-
- python3 ./ouroboros -i 1 -l debug --run-once
14+
- pip install flake8 && flake8 --max-line-length 120 *.py pyouroboros/
15+
- python3 ./ouroboros -l debug --run-once
1616

1717
deploy:
1818
- provider: pypi

CHANGELOG.md

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,41 @@
11
# Change Log
22

3-
## [0.6.0](https://github.com/pyouroboros/ouroboros/tree/0.6.0) (2019-01-16)
3+
## [1.0.0](https://github.com/pyouroboros/ouroboros/tree/1.0.0) (2019-01-22)
4+
[Full Changelog](https://github.com/pyouroboros/ouroboros/compare/0.6.0...1.0.0)
5+
6+
**Implemented enhancements:**
7+
8+
- Stop containers with alternate signal [\#107](https://github.com/pyouroboros/ouroboros/issues/107)
9+
- Docker Socket secure connections [\#105](https://github.com/pyouroboros/ouroboros/issues/105)
10+
- Selectively monitor containers with label [\#104](https://github.com/pyouroboros/ouroboros/issues/104)
11+
- Allow stop-signal label [\#133](https://github.com/pyouroboros/ouroboros/pull/133) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
12+
- Docker TLS Verify option [\#132](https://github.com/pyouroboros/ouroboros/pull/132) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
13+
- add label priority feature for watch/ignore. Addresses \#104 [\#121](https://github.com/pyouroboros/ouroboros/pull/121) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
14+
15+
**Fixed bugs:**
16+
17+
- Unexpected docker API causes program to quit ‘500 Server Error: Internal Server Error’ [\#130](https://github.com/pyouroboros/ouroboros/issues/130)
18+
- Error tag handling under the registry with port [\#129](https://github.com/pyouroboros/ouroboros/issues/129)
19+
- a fatal error when none tag image [\#122](https://github.com/pyouroboros/ouroboros/issues/122)
20+
- Bug/ignore logic [\#135](https://github.com/pyouroboros/ouroboros/pull/135) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
21+
- Bug/registry logic [\#131](https://github.com/pyouroboros/ouroboros/pull/131) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
22+
- catch no tags in get\_running [\#124](https://github.com/pyouroboros/ouroboros/pull/124) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
23+
- fixed logic for latest vs develop, and added -f to specify file [\#119](https://github.com/pyouroboros/ouroboros/pull/119) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
24+
25+
**Closed issues:**
26+
27+
- Missing docker-compose.yml from documentation [\#120](https://github.com/pyouroboros/ouroboros/issues/120) [[documentation](https://github.com/pyouroboros/ouroboros/labels/documentation)]
28+
- Wiki usage docs reference old argument names [\#115](https://github.com/pyouroboros/ouroboros/issues/115) [[documentation](https://github.com/pyouroboros/ouroboros/labels/documentation)]
29+
30+
**Other Pull Requests**
31+
32+
- v1.0.0 to develop [\#136](https://github.com/pyouroboros/ouroboros/pull/136) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
33+
- v1.0.0 Merge [\#137](https://github.com/pyouroboros/ouroboros/pull/137) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
34+
- Clean old legacy files [\#134](https://github.com/pyouroboros/ouroboros/pull/134) [[cleanup](https://github.com/pyouroboros/ouroboros/labels/cleanup)] ([DirtyCajunRice](https://github.com/DirtyCajunRice))
35+
- Cleanup/qemu logic [\#128](https://github.com/pyouroboros/ouroboros/pull/128) [[cleanup](https://github.com/pyouroboros/ouroboros/labels/cleanup)] ([DirtyCajunRice](https://github.com/DirtyCajunRice))
36+
- fix readme wording for monitoring remote hosts [\#126](https://github.com/pyouroboros/ouroboros/pull/126) [[documentation](https://github.com/pyouroboros/ouroboros/labels/documentation)] ([circa10a](https://github.com/circa10a))
37+
38+
## [0.6.0](https://github.com/pyouroboros/ouroboros/tree/0.6.0) (2019-01-17)
439
[Full Changelog](https://github.com/pyouroboros/ouroboros/compare/0.5.0...0.6.0)
540

641
**Implemented enhancements:**
@@ -26,8 +61,8 @@
2661

2762
**Other Pull Requests**
2863

29-
- Master Merge v0.6.0 [\#117](https://github.com/pyouroboros/ouroboros/pull/117) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
3064
- v0.6.0 to develop [\#118](https://github.com/pyouroboros/ouroboros/pull/118) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
65+
- v0.6.0 Merge [\#117](https://github.com/pyouroboros/ouroboros/pull/117) ([DirtyCajunRice](https://github.com/DirtyCajunRice))
3166
- add changelog formatting and fix all labels going back to 1 [\#116](https://github.com/pyouroboros/ouroboros/pull/116) [[documentation](https://github.com/pyouroboros/ouroboros/labels/documentation)] ([DirtyCajunRice](https://github.com/DirtyCajunRice))
3267

3368
## [0.5.0](https://github.com/pyouroboros/ouroboros/tree/0.5.0) (2019-01-13)

Dockerfile

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@ FROM amd64/python:3.7.2-alpine
22

33
LABEL maintainers="dirtycajunrice,circa10a,tkdeviant"
44

5-
COPY / /app
6-
75
WORKDIR /app
86

7+
COPY /requirements.txt /setup.py /ouroboros /README.md /app/
8+
9+
COPY /pyouroboros /app/pyouroboros
10+
911
RUN apk add --no-cache tzdata && \
1012
pip install --no-cache-dir .
1113

Dockerfile.arm

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,13 @@ FROM arm32v6/python:3.7.2-alpine
22

33
LABEL maintainers="dirtycajunrice,circa10a,tkdeviant"
44

5-
COPY / /app
5+
WORKDIR /app
66

7-
COPY /tmp/qemu-arm-static /usr/bin/qemu-arm-static
7+
COPY /qemu-arm-static /usr/bin/qemu-arm-static
88

9-
WORKDIR /app
9+
COPY /requirements.txt /setup.py /ouroboros /README.md /app/
10+
11+
COPY /pyouroboros /app/pyouroboros
1012

1113
RUN apk add --no-cache tzdata && \
1214
pip install --no-cache-dir .

Dockerfile.arm64

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,13 @@ FROM arm64v8/python:3.7.2-alpine
22

33
LABEL maintainers="dirtycajunrice,circa10a,tkdeviant"
44

5-
COPY / /app
5+
WORKDIR /app
66

7-
COPY /tmp/qemu-aarch64-static /usr/bin/qemu-aarch64-static
7+
COPY /qemu-aarch64-static /usr/bin/qemu-aarch64-static
88

9-
WORKDIR /app
9+
COPY /requirements.txt /setup.py /ouroboros /README.md /app/
10+
11+
COPY /pyouroboros /app/pyouroboros
1012

1113
RUN apk add --no-cache tzdata && \
1214
pip install --no-cache-dir .

Dockerfile.armhf

Lines changed: 0 additions & 13 deletions
This file was deleted.

README.md

Lines changed: 7 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
<img width="800" src="https://bin.cajun.pro/images/ouroboros/ouroboros_logo_primary_long_cropped.jpg">
22

3-
[![Discord](https://img.shields.io/badge/Discord-Ouroboros-7289DA.svg?logo=discord&style=flat-square)](https://discord.gg/qHNByUW)
3+
[![Discord](https://img.shields.io/discord/532695326117593112.svg?colorB=7289DA&label=Discord&logo=Discord&logoColor=7289DA&style=flat-square)](https://discord.gg/qHNByUW)
44
[![BuyUsCoffee](https://img.shields.io/badge/BuyMeACoffee-Donate-ff813f.svg?logo=CoffeeScript&style=flat-square)](https://buymeacoff.ee/ouroboros)
55
[![Travis](https://img.shields.io/travis/pyouroboros/ouroboros/master.svg?style=flat-square)](https://travis-ci.org/pyouroboros/ouroboros)
6-
[![Image Version](https://images.microbadger.com/badges/version/pyouroboros/ouroboros.svg)](https://hub.docker.com/r/pyouroboros/ouroboros/)
6+
[![Release](https://img.shields.io/github/release/pyouroboros/ouroboros.svg?style=flat-square)](https://hub.docker.com/r/pyouroboros/ouroboros/)
77
[![Pypi Downloads](https://img.shields.io/pypi/dm/ouroboros-cli.svg?style=flat-square)](https://pypi.org/project/ouroboros-cli/)
88
[![Python Version](https://img.shields.io/pypi/pyversions/ouroboros-cli.svg?style=flat-square)](https://pypi.org/project/ouroboros-cli/)
99
[![Docker Pulls](https://img.shields.io/docker/pulls/pyouroboros/ouroboros.svg?style=flat-square)](https://hub.docker.com/r/pyouroboros/ouroboros/)
10-
[![Layers](https://images.microbadger.com/badges/image/pyouroboros/ouroboros.svg)](https://microbadger.com/images/pyouroboros/ouroboros)
10+
[![Layers](https://images.microbadger.com/badges/image/pyouroboros/ouroboros.svg)](https://microbadger.com/images/pyouroboros/ouroboros)
1111

1212
Automatically update your running Docker containers to the latest available image.
1313

14-
A python-based alternative to [watchtower](https://github.com/v2tec/watchtower)
14+
A python-based successor to [watchtower](https://github.com/v2tec/watchtower)
1515

1616
## Overview
1717

@@ -38,7 +38,7 @@ docker run -d --name ouroboros \
3838
pyouroboros/ouroboros
3939
```
4040

41-
> This is image is compatible for amd64, arm32v7, and arm64v8 CPU architectures (regular systems and Raspberry Pi's)
41+
> This is image is compatible for amd64, arm32, and arm64 CPU architectures
4242
4343
or via `docker-compose`:
4444

@@ -61,33 +61,8 @@ $ ouroboros --interval 300 --loglevel debug
6161
> This can be useful if you would like to create a `systemd` service or similar daemon that doesn't run in a container
6262
6363
## Examples
64-
65-
### Monitor for updates for latest tag
66-
Instead of updating to your original image tag you can specify if you would like Ouroboros to update all containers to `latest`.
67-
e.g. If your container was started with `nginx:1.14-alpine` using `LATEST=true` will poll the docker registry and compare digests. If there is a new image for `nginx:latest`, ouroboros will update your container using the newly patched version.
68-
> Default is `false`
69-
```bash
70-
docker run -d --name ouroboros \
71-
-v /var/run/docker.sock:/var/run/docker.sock \
72-
-e LATEST=true \
73-
pyouroboros/ouroboros
74-
```
75-
76-
### Update containers on a remote host
77-
78-
Ouroboros can monitor things other than just local, pass the `--url` argument to update a system with the Docker API exposed.
79-
80-
> Default is unix://var/run/docker.sock
81-
82-
```bash
83-
docker run -d --name ouroboros \
84-
-v /var/run/docker.sock:/var/run/docker.sock \
85-
-e DOCKER_SOCKETS=tcp://my-remote-docker-server:2376 \
86-
pyouroboros/ouroboros
87-
```
88-
89-
Many more examples are located in our wiki on the [usage page](https://github.com/pyouroboros/ouroboros/wiki/Usage)
64+
Per-command and scenario examples can be found in the [wiki](https://github.com/pyouroboros/ouroboros/wiki/Usage)
9065

9166
## Contributing
9267

93-
All welcome
68+
All contributions are welcome! Contributing guidelines are in the works

deploy.sh

Lines changed: 11 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,8 @@ echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USER" --password-stdin
3232

3333
# Prepare QEMU for ARM builds
3434
docker run --rm --privileged multiarch/qemu-user-static:register --reset
35-
wget -P tmp/ "https://github.com/multiarch/qemu-user-static/releases/download/v3.1.0-2/qemu-aarch64-static"
36-
wget -P tmp/ "https://github.com/multiarch/qemu-user-static/releases/download/v3.1.0-2/qemu-arm-static"
37-
chmod +x tmp/qemu-aarch64-static tmp/qemu-arm-static
35+
bash prebuild.sh
36+
chmod +x qemu-aarch64-static qemu-arm-static
3837

3938
# Set tag based off of branch
4039
if [[ "$BRANCH" == "latest" ]]; then
@@ -48,44 +47,28 @@ docker build -t "${REPOSITORY}:${TAG}-amd64" . && \
4847
docker push "${REPOSITORY}:${TAG}-amd64"
4948

5049
# Create Initial Manifests
51-
docker manifest create "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${BRANCH}-amd64"
50+
docker manifest create "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-amd64"
5251
if [[ "$BRANCH" == "latest" ]]; then
53-
docker manifest create "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-amd64"
52+
docker manifest create "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${TAG}-amd64"
5453
fi
5554

5655
# ARM variants
5756
for i in $(ls *arm*); do
5857
ARCH="$(echo ${i} | cut -d. -f2)"
59-
docker build -t "${REPOSITORY}:${TAG}-${ARCH}" . && \
58+
docker build -f "Dockerfile.${ARCH}" -t "${REPOSITORY}:${TAG}-${ARCH}" . && \
6059
docker push "${REPOSITORY}:${TAG}-${ARCH}"
6160
# Add variant to manifest
62-
docker manifest create -a "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${BRANCH}-${ARCH}"
61+
docker manifest create -a "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-${ARCH}"
6362
if [[ "$BRANCH" == "latest" ]]; then
64-
docker manifest create -a "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-${ARCH}"
65-
fi
66-
if [[ "$ARCH" == "arm64" ]]; then
67-
docker manifest annotate "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${BRANCH}-${ARCH}" --variant v8 --arch arm64
68-
if [[ "$BRANCH" == "latest" ]]; then
69-
docker manifest annotate "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-${ARCH}" --variant v8 --arch arm64
70-
fi
71-
elif [[ "$ARCH" == "armhf" ]]; then
72-
docker manifest annotate "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${BRANCH}-${ARCH}" --variant v7 --arch arm
73-
if [[ "$BRANCH" == "latest" ]]; then
74-
docker manifest annotate "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-${ARCH}" --variant v7 --arch arm
75-
fi
76-
elif [[ "$ARCH" == "arm" ]]; then
77-
docker manifest annotate "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${BRANCH}-${ARCH}" --variant v6 --arch arm
78-
if [[ "$BRANCH" == "latest" ]]; then
79-
docker manifest annotate "${REPOSITORY}:${TAG}" "${REPOSITORY}:${TAG}-${ARCH}" --variant v6 --arch arm
80-
fi
63+
docker manifest create -a "${REPOSITORY}:${BRANCH}" "${REPOSITORY}:${TAG}-${ARCH}"
8164
fi
8265
done
8366

84-
docker manifest inspect "${REPOSITORY}:${BRANCH}" && \
85-
docker manifest push "${REPOSITORY}:${BRANCH}"
67+
docker manifest inspect "${REPOSITORY}:${TAG}" && \
68+
docker manifest push "${REPOSITORY}:${TAG}"
8669
if [[ "$BRANCH" == "latest" ]]; then
87-
docker manifest inspect "${REPOSITORY}:${TAG}" && \
88-
docker manifest push "${REPOSITORY}:${TAG}"
70+
docker manifest inspect "${REPOSITORY}:${BRANCH}" && \
71+
docker manifest push "${REPOSITORY}:${BRANCH}"
8972
fi
9073

9174
# Git tags

0 commit comments

Comments
 (0)