Skip to content

Commit

Permalink
Onboarding to app-interface
Browse files Browse the repository at this point in the history
Signed-off-by: Amador Pahim <apahim@redhat.com>
  • Loading branch information
apahim committed Jul 15, 2020
1 parent d71e774 commit ed8b576
Show file tree
Hide file tree
Showing 4 changed files with 215 additions and 0 deletions.
20 changes: 20 additions & 0 deletions Dockerfile.test
@@ -0,0 +1,20 @@
FROM golang:1.14.3

ENV GO111MODULE=on

WORKDIR /assisted-service

COPY . ./

RUN curl -sSfL \
https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | \
sh -s -- -b $(go env GOPATH)/bin v1.24.0

RUN go get -u \
github.com/onsi/ginkgo/ginkgo@v1.12.2 \
golang.org/x/tools/cmd/goimports@v0.0.0-20200520220537-cf2d1e09c845 \
github.com/golang/mock/mockgen@v1.4.3 \
github.com/vektra/mockery/.../@v1.1.2

ENTRYPOINT ["make"]
CMD ["unit-test"]
31 changes: 31 additions & 0 deletions build_deploy.sh
@@ -0,0 +1,31 @@
#!/bin/bash

TAG=$(git rev-parse --short=7 HEAD)

BM_INVENTORY_IMAGE="quay.io/app-sre/bm-inventory"

docker build -t "${BM_INVENTORY_IMAGE}:latest" -f Dockerfile.bm-inventory .
docker tag "${BM_INVENTORY_IMAGE}:latest" "${BM_INVENTORY_IMAGE}:${TAG}"

BM_INVENTORY_BUILD_IMAGE="quay.io/app-sre/bm-inventory-build"

docker build -t "${BM_INVENTORY_BUILD_IMAGE}:latest" -f Dockerfile.bm-inventory-build .
docker tag "${BM_INVENTORY_BUILD_IMAGE}:latest" "${BM_INVENTORY_BUILD_IMAGE}:${TAG}"

OBJ_EXPIRER_IMAGE="quay.io/app-sre/s3-object-expirer"

docker build -t "${OBJ_EXPIRER_IMAGE}:latest" -f Dockerfile.s3-object-expirer .
docker tag "${OBJ_EXPIRER_IMAGE}:latest" "${OBJ_EXPIRER_IMAGE}:${TAG}"

DOCKER_CONF="${PWD}/.docker"
mkdir -p "${DOCKER_CONF}"
docker --config="${DOCKER_CONF}" login -u="${QUAY_USER}" -p="${QUAY_TOKEN}" quay.io

docker --config="${DOCKER_CONF}" push "${BM_INVENTORY_IMAGE}:latest"
docker --config="${DOCKER_CONF}" push "${BM_INVENTORY_IMAGE}:${TAG}"

docker --config="${DOCKER_CONF}" push "${BM_INVENTORY_BUILD_IMAGE}:latest"
docker --config="${DOCKER_CONF}" push "${BM_INVENTORY_BUILD_IMAGE}:${TAG}"

docker --config="${DOCKER_CONF}" push "${OBJ_EXPIRER_IMAGE}:latest"
docker --config="${DOCKER_CONF}" push "${OBJ_EXPIRER_IMAGE}:${TAG}"
158 changes: 158 additions & 0 deletions openshift/template.yaml
@@ -0,0 +1,158 @@
---
parameters:
- name: BM_INVENTORY_IMAGE
value: quay.io/app-sre/bm-inventory
- name: BM_INVENTORY_IMAGE_TAG
value: latest
- name: OBJ_EXPIRER_IMAGE
value: quay.io/ocpmetal/s3-object-expirer
- name: OBJ_EXPIRER_IMAGE_TAG
value: latest
apiVersion: v1
kind: Template
metadata:
name: assisted-installer
objects:
- apiVersion: apps/v1
kind: Deployment
metadata:
name: bm-inventory
namespace: assisted-installer
spec:
selector:
matchLabels:
app: bm-inventory
replicas: 1
template:
metadata:
labels:
app: bm-inventory
spec:
containers:
- name: bm-inventory
image: ${BM_INVENTORY_IMAGE}:${BM_INVENTORY_IMAGE_TAG}
imagePullPolicy: Always
resources:
limits:
cpu: 200m
memory: 500Mi
requests:
cpu: 100m
memory: 400Mi
ports:
- name: bm-inventory
containerPort: 8090
env:
- name: ROUTE53_CREDS
valueFrom:
secretKeyRef:
key: creds
name: route53-creds
- name: AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
key: aws_secret_access_key
name: assisted-installer-s3
- name: AWS_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
key: aws_access_key_id
name: assisted-installer-s3
- name: AWS_REGION
valueFrom:
secretKeyRef:
key: aws_region
name: assisted-installer-s3
- name: BUCKET
valueFrom:
secretKeyRef:
key: bucket
name: assisted-installer-s3
- name: ENDPOINT
valueFrom:
secretKeyRef:
key: endpoint
name: assisted-installer-s3
- name: DB_HOST
valueFrom:
secretKeyRef:
key: db.host
name: assisted-installer-rds
- name: DB_NAME
valueFrom:
secretKeyRef:
key: db.name
name: assisted-installer-rds
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
key: db.password
name: assisted-installer-rds
- name: DB_PORT
valueFrom:
secretKeyRef:
key: db.port
name: assisted-installer-rds
- name: DB_USER
valueFrom:
secretKeyRef:
key: db.user
name: assisted-installer-rds
- name: IMAGE_BUILDER_CMD
value: ""
- apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: s3-object-expirer-cron-job
namespace: assisted-installer
spec:
schedule: "@hourly"
successfulJobsHistoryLimit: 0
failedJobsHistoryLimit: 1
jobTemplate:
spec:
template:
spec:
containers:
- name: s3-object-expirer-job-pod
image: ${OBJ_EXPIRER_IMAGE}:${OBJ_EXPIRER_IMAGE_TAG}
imagePullPolicy: Always
env:
- name: AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
key: aws_secret_access_key
name: assisted-installer-s3
- name: AWS_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
key: aws_access_key_id
name: assisted-installer-s3
- name: AWS_REGION
valueFrom:
secretKeyRef:
key: aws_region
name: assisted-installer-s3
- name: BUCKET
valueFrom:
secretKeyRef:
key: bucket
name: assisted-installer-s3
- name: ENDPOINT
valueFrom:
secretKeyRef:
key: endpoint
name: assisted-installer-s3
args:
- /bin/bash
- -c
- python ./expirer.py
resources:
limits:
cpu: 200m
memory: 200Mi
requests:
cpu: 100m
memory: 100Mi
restartPolicy: OnFailure
backoffLimit: 3
6 changes: 6 additions & 0 deletions pr_check.sh
@@ -0,0 +1,6 @@
#!/bin/bash

IMAGE_TEST=bm-inventory-test

docker build -t ${IMAGE_TEST} -f Dockerfile.test .
docker run --rm ${IMAGE_TEST}

0 comments on commit ed8b576

Please sign in to comment.