Skip to content

Instantly share code, notes, and snippets.

View cgwalters's full-sized avatar
👍
LGTM

Colin Walters cgwalters

👍
LGTM
View GitHub Profile
```
commit b601dda71962e2b7a99e63cb23c28f5e83156c0c
Author: Colin Walters <[email protected]>
AuthorDate: Thu Jan 10 22:03:53 2019 +0000
Commit: Colin Walters <[email protected]>
CommitDate: Thu Jan 10 22:03:53 2019 +0000
wip
diff --git a/pkg/controller/render/render_controller.go b/pkg/controller/render/render_controller.go
```
baseDomain: verbum.local
clusterID: dea83fad-44dc-4c5c-84bf-04e454335384
apiVersion: v1beta1
machines:
- name: master
platform: {}
replicas: 3
- name: worker
platform: {}
```
$ oc adm release new -n openshift --server https://api.ci.openshift.org \
--from-release=$(oc get clusterversion -o jsonpath='{.items[0].status.desired.image}') \
--to-image quay.io/cgwalters/ostest:latest \
machine-os-content=registry.svc.ci.openshift.org/rhcos/maipo@sha256:9cbbb97c56593c3ed703adac0cbc887f4f8e568812a940edd4421f91385142ba
```
```
$ oc adm upgrade --to-image=quay.io/cgwalters/ostest:latest
```
```
# rpm -q podman && podman run --privileged --rm -ti --entrypoint bash -u 1000 localhost/cgwalters/fedora-dev:29 -c 'rpm -q podman && sudo su - walters -c "podman images"'
podman-1.0.0-1.git82e8011.fc29.x86_64
podman-1.0.0-1.git82e8011.fc29.x86_64
ERRO[0000] cannot setup namespace using newuidmap: exit status 1
```
```
+ oc adm release new --from-release registry.svc.ci.openshift.org/openshift/origin-release@sha256:13107213ca816f906b634a930ed8a4a416d09ddc11e4e9e4d8794f5e7551989b --to-image=openshift-machine-config-operator/dev
release:latest machine-config-operator=image-registry-openshift-image-registry.apps.osiris.verbum.local/openshift-machine-config-operator/machine-config-operator:latest machine-config-controller=image-registry-o
penshift-image-registry.apps.osiris.verbum.local/openshift-machine-config-operator/machine-config-controller:latest machine-config-server=image-registry-openshift-image-registry.apps.osiris.verbum.local/openshift-machine-config-operator/machine-config-server:latest machine-config-daemon=image-registry-openshift-image-registry.apps.osiris.verbum.local/openshift-machine-config-operator/machine-config-daemon:latest
info: Found 73 images in release
info: Manifests will be extracted to /tmp/releas
This file has been truncated, but you can view the full file.
```
M /usr/bin
M /usr/etc/gshadow
M /usr/etc/shadow
M /usr/etc/dconf/db/site
M /usr/etc/pki/ca-trust/extracted/java/cacerts
M /usr/lib
M /usr/lib/os-release
M /usr/lib/games
M /usr/lib/modules/4.18.16-300.fc29.x86_64/initramfs.img
sh-4.4# journalctl |grep -iEe '(machine-config|pivot\[|reboot)' |grep -vEe '(hyperkube|systemd.*mount)'
May 06 20:18:13 ip-10-0-157-127.us-west-2.compute.internal ignition[770]: INFO : files: createFilesystemsFiles: createFiles: op(13): [started] writing file "/etc/machine-config-daemon/node-annotations.json"
May 06 20:18:13 ip-10-0-157-127.us-west-2.compute.internal ignition[770]: INFO : files: createFilesystemsFiles: createFiles: op(13): [finished] writing file "/etc/machine-config-daemon/node-annotations.json"
May 06 20:18:13 ip-10-0-157-127.us-west-2.compute.internal ignition[770]: INFO : files: op(19): [started] processing unit "mcd-write-pivot-reboot.service"
May 06 20:18:13 ip-10-0-157-127.us-west-2.compute.internal ignition[770]: INFO : files: op(19): op(1a): [started] writing unit "mcd-write-pivot-reboot.service" at "etc/systemd/system/mcd-write-pivot-reboot.service"
May 06 20:18:13 ip-10-0-157-127.us-west-2.compute.internal ignition[770]: INFO : files: op(19): op(1a): [finishe

fdtest.sh which is a reduced version of coreos-assembler run:

#!/bin/bash
set -xeuo pipefail
t=$(mktemp)
exec 4<> "${t}"
echo foo > ${t}
rm -f ${t}
ls -al /proc/self/fd
```
#!/bin/bash
# Convert from a label to its containing block device
# see https://github.com/coreos/ignition-dracut/pull/93
label=root
device=$(realpath /dev/disk/by-label/${label})
major=$(echo $((0x$(stat -c '%t' "${device}"))))
minor=$(echo $((0x$(stat -c '%T' "${device}"))))
majmin=${major}:${minor}
devpath=$(realpath "/sys/dev/block/$majmin")
@cgwalters
cgwalters / cosa.md
Last active August 22, 2019 14:44
cosa unprivileged
cosa() {
   env | grep COREOS_ASSEMBLER
   id=$(id -u)
   set -x # so we can see what command gets run
   podman run --rm -ti --security-opt label:disable --privileged \
              --uidmap=${id}:0:1 --uidmap=0:1:${id} \
              -v ${PWD}:/srv/ -v /dev/kvm:/dev/kvm -v /dev/fuse:/dev/fuse --device /dev/kvm \
              --tmpfs /tmp --tmpfs /var/tmp --name cosa \
${COREOS_ASSEMBLER_CONFIG_GIT:+-v $COREOS_ASSEMBLER_CONFIG_GIT:/srv/src/config/:ro} \