Skip to content

Commit

Permalink
Adapt hack scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
rfranzke committed Apr 6, 2020
1 parent cbd1eb8 commit 08c1bfd
Show file tree
Hide file tree
Showing 85 changed files with 296 additions and 531 deletions.
89 changes: 0 additions & 89 deletions .ci/check

This file was deleted.

21 changes: 1 addition & 20 deletions .ci/component_descriptor
Original file line number Diff line number Diff line change
@@ -1,22 +1,3 @@
#!/usr/bin/env bash

set -e

images_file="$(dirname "$0")/../charts/images.yaml"
images="$(yaml2json < $images_file)"

echo "enriching creating component descriptor from ${BASE_DEFINITION_PATH}"

eval "$(jq -r ".images |
map(select(.sourceRepository != \"github.com/gardener/gardener\") |
if (.name == \"hyperkube\" or .name == \"kube-apiserver\" or .name == \"kube-controller-manager\" or .name == \"kube-scheduler\" or .name == \"kube-proxy\") then
\"--generic-dependencies '{\\\"name\\\": \\\"\" + .name + \"\\\", \\\"version\\\": \\\"\" + .tag + \"\\\"}'\"
elif (.repository | startswith(\"eu.gcr.io/gardener-project/gardener\")) then
\"--component-dependencies '{\\\"name\\\": \\\"\" + .sourceRepository + \"\\\", \\\"version\\\": \\\"\" + .tag + \"\\\"}'\"
else
\"--container-image-dependencies '{\\\"name\\\": \\\"\" + .name + \"\\\", \\\"image_reference\\\": \\\"\" + .repository + \":\" + .tag + \"\\\", \\\"version\\\": \\\"\" + .tag + \"\\\"}'\"
end) |
\"${ADD_DEPENDENCIES_CMD} \\\\\n\" +
join(\" \\\\\n\")" <<< "$images")"

cp "${BASE_DEFINITION_PATH}" "${COMPONENT_DESCRIPTOR_PATH}"
"$(dirname $0)"/../hack/.ci/component_descriptor "$(dirname $0)"/..
108 changes: 2 additions & 106 deletions .ci/set_dependency_version
Original file line number Diff line number Diff line change
@@ -1,107 +1,3 @@
#!/usr/bin/env python3
#!/usr/bin/env bash

import pathlib
import yaml

import util
import product.model

dependency_type = util.check_env('DEPENDENCY_TYPE')
if not dependency_type == 'component':
util.fail('don\'t know how to upgrade dependency type: ' + str(dependency_type))

component_reference = product.model.ComponentReference.create(
name=util.check_env('DEPENDENCY_NAME'),
version=util.check_env('DEPENDENCY_VERSION'),
)

images_file = pathlib.Path(
util.check_env('REPO_DIR'),
'charts',
'images.yaml',
)

class ImagesParser(object):
'''
a naive YAML-parser crafted for the special case of processing
gardener's images.yaml file; crafted that way to preserve comments/empty lines
'''
def __init__(
self,
images_file,
names,
target_version,
):
self.images_file = images_file
self.lines = images_file.read_text().split('\n')
self.names = names
self.target_version = target_version
self._line_idx = 0

def _line(self):
return self.lines[self._line_idx]

def _next_line(self):
self._line_idx += 1
return self._line()

def _skip_to_next_entry(self, names):
while not self._line().startswith('-'):
self._next_line()
name = self._line().strip().split(':')[-1].strip()

if name not in names:
self._next_line()
return self._skip_to_next_entry(names)

# found one of the entries:
return name

def _skip_to_next_tag(self):
self._next_line()
while not self._line().startswith('-'):
if self._line().strip().startswith('tag:'):
return
self._next_line()
raise RuntimeError('did not find tag attribute')

def set_versions(self):
while self.names:
try:
name = self._skip_to_next_entry(self.names)
except IndexError:
print(str(self.names))
util.fail('don\'t know how to update ' + str(self.names))
self.names.remove(name)
self._skip_to_next_tag()
tag_line = self._line()
indent = len(tag_line) - len(tag_line.lstrip())
patched_line = ' ' * indent + 'tag: "{version}"'.format(version=self.target_version)
self.lines[self._line_idx] = patched_line

def write_updated_file(self):
self.images_file.write_text(
'\n'.join(self.lines)
)


# handle special cases
name = component_reference.github_repo()
if name == 'autoscaler':
names = ['cluster-autoscaler']
elif name == 'vpn':
names = ['vpn-seed', 'vpn-shoot']
elif name == 'logging':
names = ['fluentd-es', 'curator-es']
else:
names = [name]


parser = ImagesParser(
images_file=images_file,
names=names,
target_version=str(component_reference.version()),
)

parser.set_versions()
parser.write_updated_file()
"$(dirname $0)"/../hack/.ci/set_dependency_version
66 changes: 0 additions & 66 deletions .ci/test

This file was deleted.

14 changes: 14 additions & 0 deletions .ci/verify
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/bash

cd "$(dirname $0)/.."

git config --global user.email "gardener@sap.com"
git config --global user.name "Gardener CI/CD"

apt-get update && apt-get install -y unzip

mkdir -p /go/src/github.com/gardener/gardener
cp -r . /go/src/github.com/gardener/gardener
cd /go/src/github.com/gardener/gardener

make verify-extended
15 changes: 10 additions & 5 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,17 @@
**

# Exclude folders relevant for build
!pkg/
!.git
!charts/
!cmd/
!vendor/
!extensions/
!hack/
!pkg/
!plugin/
!charts/
!VERSION
!.git
!test/
!vendor/
!.golangci.yaml
!go.mod
!go.sum
!Makefile
!VERSION
17 changes: 17 additions & 0 deletions .golangci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
run:
concurrency: 4
deadline: 10m

skip-dirs:
- pkg/client/core
- pkg/client/extensions
- pkg/client/settings

skip-files:
- ".*\\.pb\\.go$"

issues:
exclude-rules:
- linters:
- staticcheck
text: "SA1019:" # Excludes messages where deprecated variables are used
8 changes: 1 addition & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,7 @@ FROM golang:1.13.9 AS builder
WORKDIR /go/src/github.com/gardener/gardener
COPY . .

RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go install \
-mod=vendor \
-ldflags "-X github.com/gardener/gardener/pkg/version.gitVersion=$(cat VERSION) \
-X github.com/gardener/gardener/pkg/version.gitTreeState=$([ -z git status --porcelain 2>/dev/null ] && echo clean || echo dirty) \
-X github.com/gardener/gardener/pkg/version.gitCommit=$(git rev-parse --verify HEAD) \
-X github.com/gardener/gardener/pkg/version.buildDate=$(date --iso-8601=seconds)" \
./...
RUN make install

############# base
FROM alpine:3.11.3 AS base
Expand Down
Loading

0 comments on commit 08c1bfd

Please sign in to comment.