@@ -90,19 +90,27 @@ runs:
9090 echo "::endgroup::"
9191 shell : bash
9292
93- - name : Setup cri-dockerd
93+ # NOTE: The sed substitution operation is to run cri-dockerd in a way that
94+ # makes it work with calico as a CNI. This was based on
95+ # https://github.com/Mirantis/cri-dockerd/issues/42.
96+ #
97+ - name : Setup cri-dockerd as a dockershim
9498 if : inputs.docker-enabled == 'true'
99+ env :
100+ CRI_DOCKERD_VERSION : " 0.2.2"
95101 run : |
96102 cd /tmp
97103
98- wget -qO cri-dockerd.tgz https://github.com/Mirantis/cri-dockerd/releases/download/v0.2.1/cri-dockerd-0.2.1.amd64.tgz
99- tar xvf cri-dockerd.tgz
100- mv cri-dockerd/cri-dockerd /usr/local/bin/
104+ wget -qO- https://github.com/Mirantis/cri-dockerd/releases/download/v${CRI_DOCKERD_VERSION}/cri-dockerd-${CRI_DOCKERD_VERSION}.amd64.tgz | tar -xvz --strip-components=1
105+ wget -q https://raw.githubusercontent.com/Mirantis/cri-dockerd/v${CRI_DOCKERD_VERSION}/packaging/systemd/cri-docker.service
106+ wget -q https://raw.githubusercontent.com/Mirantis/cri-dockerd/v${CRI_DOCKERD_VERSION}/packaging/systemd/cri-docker.socket
107+ sudo mv cri-dockerd /usr/bin/
108+ sudo mv cri-docker.socket /etc/systemd/system/
109+ sudo mv cri-docker.service /etc/systemd/system/
101110
102- wget -q https://raw.githubusercontent.com/Mirantis/cri-dockerd/master/packaging/systemd/cri-docker.service
103- wget -q https://raw.githubusercontent.com/Mirantis/cri-dockerd/master/packaging/systemd/cri-docker.socket
104- sudo mv cri-docker.socket cri-docker.service /etc/systemd/system/
105- sudo sed -i -e 's,/usr/bin/cri-dockerd,/usr/local/bin/cri-dockerd,' /etc/systemd/system/cri-docker.service
111+ sudo sed --in-place --expression \
112+ 's,--network-plugin=,--network-plugin=cni --cni-bin-dir=/opt/cni/bin --cni-cache-dir=/var/lib/cni/cache --cni-conf-dir=/etc/cni/net.d,' \
113+ /etc/systemd/system/cri-docker.service
106114
107115 sudo systemctl daemon-reload
108116 sudo systemctl enable cri-docker.service
0 commit comments