Merge pull request #1786 from jberry-suse/obs_operator-dist
dist/kubernetes: provide OBS Operator component (and related changes)
This commit is contained in:
commit
590fd22198
1
dist/kiwi/osrt-worker-obs.kiwi
vendored
1
dist/kiwi/osrt-worker-obs.kiwi
vendored
@ -21,6 +21,7 @@
|
|||||||
<packages type="image">
|
<packages type="image">
|
||||||
<package name="openSUSE-release-tools-check-source"/>
|
<package name="openSUSE-release-tools-check-source"/>
|
||||||
<package name="openSUSE-release-tools-leaper"/>
|
<package name="openSUSE-release-tools-leaper"/>
|
||||||
|
<package name="openSUSE-release-tools-obs-operator"/>
|
||||||
<package name="openSUSE-release-tools-pkglistgen"/>
|
<package name="openSUSE-release-tools-pkglistgen"/>
|
||||||
<package name="openSUSE-release-tools-repo-checker"/>
|
<package name="openSUSE-release-tools-repo-checker"/>
|
||||||
<package name="openSUSE-release-tools-staging-bot"/>
|
<package name="openSUSE-release-tools-staging-bot"/>
|
||||||
|
5
dist/kubernetes/app.yaml
vendored
5
dist/kubernetes/app.yaml
vendored
@ -7,8 +7,9 @@ environments:
|
|||||||
k8sVersion: v1.8.0
|
k8sVersion: v1.8.0
|
||||||
path: heroes
|
path: heroes
|
||||||
targets:
|
targets:
|
||||||
- check-source
|
#- check-source
|
||||||
- repo-checker
|
- obs-operator
|
||||||
|
#- repo-checker
|
||||||
kind: ksonnet.io/app
|
kind: ksonnet.io/app
|
||||||
name: openSUSE-release-tools
|
name: openSUSE-release-tools
|
||||||
version: 0.0.1
|
version: 0.0.1
|
||||||
|
14
dist/kubernetes/components/obs-operator/params.libsonnet
vendored
Normal file
14
dist/kubernetes/components/obs-operator/params.libsonnet
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
global: {
|
||||||
|
cpu: "100m",
|
||||||
|
memory: "128Mi",
|
||||||
|
image: null,
|
||||||
|
prefix: "obs-operator",
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
service: {
|
||||||
|
externalIPs: null,
|
||||||
|
externalPort: null,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
13
dist/kubernetes/components/obs-operator/service.jsonnet
vendored
Normal file
13
dist/kubernetes/components/obs-operator/service.jsonnet
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
local params = std.extVar("__ksonnet/params").components.service;
|
||||||
|
local service = import '../service.libsonnet';
|
||||||
|
|
||||||
|
[
|
||||||
|
service.parts.deployment.base(
|
||||||
|
params.prefix, "deployment",
|
||||||
|
params.cpu, params.memory, params.image,
|
||||||
|
"osrt-obs_operator --debug"),
|
||||||
|
|
||||||
|
service.parts.service.base(
|
||||||
|
params.prefix, "service", 8080, params.externalIPs, params.externalPort,
|
||||||
|
),
|
||||||
|
]
|
84
dist/kubernetes/components/service.libsonnet
vendored
Normal file
84
dist/kubernetes/components/service.libsonnet
vendored
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
{
|
||||||
|
parts:: {
|
||||||
|
deployment:: {
|
||||||
|
base(prefix, name, cpu, memory, image, command):: {
|
||||||
|
apiVersion: "apps/v1",
|
||||||
|
kind: "Deployment",
|
||||||
|
metadata: {
|
||||||
|
name: prefix + "-" + name,
|
||||||
|
labels: {
|
||||||
|
app: prefix,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
spec: {
|
||||||
|
replicas: 1,
|
||||||
|
selector: {
|
||||||
|
matchLabels: {
|
||||||
|
app: prefix,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
template: {
|
||||||
|
metadata: {
|
||||||
|
labels: {
|
||||||
|
app: prefix,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
spec: {
|
||||||
|
containers: [{
|
||||||
|
name: "service",
|
||||||
|
image: image,
|
||||||
|
args: [
|
||||||
|
"/bin/bash", "-c",
|
||||||
|
"cp /secret/.oscrc /root && osc staging --version && " + command
|
||||||
|
],
|
||||||
|
volumeMounts: [
|
||||||
|
{
|
||||||
|
name: "oscrc",
|
||||||
|
mountPath: "/secret",
|
||||||
|
readOnly: true,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
resources: {
|
||||||
|
requests: {
|
||||||
|
cpu: cpu,
|
||||||
|
memory: memory,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}],
|
||||||
|
volumes: [
|
||||||
|
{
|
||||||
|
name: "oscrc",
|
||||||
|
secret: {
|
||||||
|
secretName: prefix + "-oscrc",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
service:: {
|
||||||
|
base(prefix, name, internalPort, externalIPs, externalPort):: {
|
||||||
|
apiVersion: "v1",
|
||||||
|
kind: "Service",
|
||||||
|
metadata: {
|
||||||
|
name: prefix + "-" + name,
|
||||||
|
},
|
||||||
|
spec: {
|
||||||
|
type: "NodePort",
|
||||||
|
selector: {
|
||||||
|
app: prefix,
|
||||||
|
},
|
||||||
|
ports: [{
|
||||||
|
protocol: "TCP",
|
||||||
|
port: internalPort,
|
||||||
|
nodePort: externalPort,
|
||||||
|
}],
|
||||||
|
externalIPs: externalIPs,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
local image = "registry.opensuse.org/home/jberry/container/container/osrt/worker-obs";
|
local image = "registry.opensuse.org/opensuse/tools/images/images/osrt/worker-obs";
|
||||||
local image_version = "latest";
|
local image_version = "latest";
|
||||||
local image_full = image + ':' + image_version;
|
local image_full = image + ':' + image_version;
|
||||||
|
|
||||||
|
@ -2,6 +2,14 @@ local params = std.extVar("__ksonnet/params");
|
|||||||
local globals = import "globals.libsonnet";
|
local globals = import "globals.libsonnet";
|
||||||
local envParams = params + {
|
local envParams = params + {
|
||||||
components+: {
|
components+: {
|
||||||
|
"obs-operator.service"+: {
|
||||||
|
externalIPs: [
|
||||||
|
"192.168.47.44",
|
||||||
|
"192.168.47.45",
|
||||||
|
"192.168.47.46",
|
||||||
|
],
|
||||||
|
externalPort: 31452,
|
||||||
|
},
|
||||||
"repo-checker.project_only"+: {
|
"repo-checker.project_only"+: {
|
||||||
projects: [
|
projects: [
|
||||||
"openSUSE:Factory",
|
"openSUSE:Factory",
|
||||||
|
1
dist/package/openSUSE-release-tools.spec
vendored
1
dist/package/openSUSE-release-tools.spec
vendored
@ -27,6 +27,7 @@ License: GPL-2.0-or-later AND MIT
|
|||||||
Group: Development/Tools/Other
|
Group: Development/Tools/Other
|
||||||
Url: https://github.com/openSUSE/openSUSE-release-tools
|
Url: https://github.com/openSUSE/openSUSE-release-tools
|
||||||
Source: %{name}-%{version}.tar.xz
|
Source: %{name}-%{version}.tar.xz
|
||||||
|
Source99: osrt-worker-obs.kiwi
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
# Requires sr#512849 which provides osc_plugin_dir.
|
# Requires sr#512849 which provides osc_plugin_dir.
|
||||||
BuildRequires: osc >= 0.159.0
|
BuildRequires: osc >= 0.159.0
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
#!/usr/bin/python3
|
#!/usr/bin/python3 -u
|
||||||
|
# Without the -u option for unbuffered output nothing shows up in journal or
|
||||||
|
# kubernetes logs.
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
from http.cookies import SimpleCookie
|
from http.cookies import SimpleCookie
|
||||||
|
Loading…
x
Reference in New Issue
Block a user