Update README in pipelines

This commit is contained in:
Dave Chevell 2019-09-05 13:53:40 +10:00
parent 36d2420fad
commit 4067f473d1
No known key found for this signature in database
GPG Key ID: 279DF1B52C7C44DC
2 changed files with 41 additions and 2 deletions

32
bin/push-readme.py Normal file
View File

@ -0,0 +1,32 @@
import logging
import os
import requests
logging.basicConfig(level=logging.INFO)
DOCKER_REPO = os.environ.get('DOCKER_REPO')
DOCKER_USERNAME = os.environ.get('DOCKER_USERNAME')
DOCKER_PASSWORD = os.environ.get('DOCKER_PASSWORD')
README_FILE = os.environ.get('README_FILE') or 'README.md'
logging.info('Generating Docker Hub JWT')
data = {'username': DOCKER_USERNAME, 'password': DOCKER_PASSWORD}
r = requests.post('https://hub.docker.com/v2/users/login/', json=data)
docker_token = r.json().get('token')
logging.info(f'Updating Docker Hub description for {DOCKER_REPO}')
with open(README_FILE) as f:
full_description = f.read()
data = {'registry': 'registry-1.docker.io', 'full_description': full_description}
headers = {'Authorization': f'JWT {docker_token}'}
r = requests.patch(f'https://cloud.docker.com/v2/repositories/{DOCKER_REPO}/',
json=data, headers=headers)
if r.status_code == requests.codes.ok:
logging.info(f'Successfully updated {README_FILE} for {DOCKER_REPO}')
else:
logging.info(f'Unable to update {README_FILE} for {DOCKER_REPO}, response code: {r.status_code}')

View File

@ -86,6 +86,13 @@ pipelines:
- export TAG_SUFFIXES='adoptopenjdk8,jdk8,ubuntu,ubuntu-18.04-adoptopenjdk8' - export TAG_SUFFIXES='adoptopenjdk8,jdk8,ubuntu,ubuntu-18.04-adoptopenjdk8'
- echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin
- python /usr/src/app/run.py --update - python /usr/src/app/run.py --update
- step:
name: Update README
image: python:3.7-alpine3.9
script:
- pip install -q requests
- export DOCKER_REPO='atlassian/confluence-server'
- python bin/push-readme.py
pull-requests: pull-requests:
'**': '**':
- step: - step: