Skip to content

Commit

Permalink
Tmp
Browse files Browse the repository at this point in the history
Signed-off-by: Tomoki Sugiura <tomoki-sugiura@cybozu.co.jp>
  • Loading branch information
chez-shanpu committed Jan 22, 2024
1 parent fdea83f commit 1f5587a
Show file tree
Hide file tree
Showing 6 changed files with 40 additions and 52 deletions.
1 change: 1 addition & 0 deletions .github/actions/build_cilium-agent/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ runs:
dir: ./cilium
container-image: cilium
github_token: ${{ inputs.github_token }}
scan: ${{ inputs.scan }}

- name: Build Cilium Envoy
uses: ./.github/actions/build_cilium-envoy
Expand Down
16 changes: 9 additions & 7 deletions .github/actions/build_cilium-envoy/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,27 +46,29 @@ runs:
- name: Download cilium/proxy
shell: bash
run: |
mkdir -p src/workspace/usr/bin src/cilium-proxy
mkdir -p cilium/src/workspace/usr/bin cilium/src/cilium-proxy
curl -sSLf https://github.com/cilium/proxy/archive/${{ inputs.cilium-proxy_version }}.tar.gz | \
tar zxf - --strip-components 1 -C src/cilium-proxy
tar zxf - --strip-components 1 -C cilium/src/cilium-proxy
- name: Install bazel
shell: bash
run: |
BAZEL_VERSION="$(cat src/cilium-proxy/.bazelversion)"
BAZEL_VERSION="$(cat cilium/src/cilium-proxy/.bazelversion)"
sudo curl -sfL https://github.com/bazelbuild/bazel/releases/download/${BAZEL_VERSION}/bazel-${BAZEL_VERSION}-linux-x86_64 -o /usr/bin/bazel
sudo chmod +x /usr/bin/bazel
- name: Build cilium-envoy
shell: bash
env:
BAZEL_BUILD_OPTS: "--remote_upload_local_results=false --disk_cache=/tmp/bazel-cache"
BAZEL_BUILD_OPTS: "--remote_upload_local_results=false --disk_cache=/tmp/bazel-cache --verbose_failures"
PKG_BUILD: 1
DESTDIR: /tmp/install
run: |
cd src/cilium-proxy
export PKG_BUILD=${{ env.PKG_BUILD }}
export DESTDIR=${{ env.DESTDIR }}
cd cilium/src/cilium-proxy
echo ${{ inputs.cilium-proxy_version }} > SOURCE_VERSION
make bazel-bin/cilium-envoy
make bazel-bin/cilium-envoy BAZEL_BUILD_OPTS="${{ env.BAZEL_BUILD_OPTS }}"
./bazel/get_workspace_status
make install
mv /tmp/install/usr/bin/cilium-envoy ../workspace/usr/bin/
sudo mv /tmp/install/usr/bin/cilium-envoy ../workspace/usr/bin/
58 changes: 21 additions & 37 deletions .github/actions/build_cilium-image-tools/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,37 +12,21 @@ runs:
env:
DEBIAN_FRONTEND: noninteractive
run: |
sudo cat > /etc/apt/sources.list \<< EOF
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse
deb [arch=amd64] http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse
deb [arch=amd64] http://archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse
deb [arch=arm64] http://ports.ubuntu.com/ jammy main restricted universe multiverse
deb [arch=arm64] http://ports.ubuntu.com/ jammy-updates main restricted universe multiverse
deb [arch=arm64] http://ports.ubuntu.com/ jammy-security main restricted universe multiverse
deb [arch=arm64] http://ports.ubuntu.com/ jammy-backports main restricted universe multiverse
EOF
dpkg --add-architecture arm64
sudo apt-get update
ln -fs /usr/share/zoneinfo/UTC /etc/localtime
sudo ln -fs /usr/share/zoneinfo/UTC /etc/localtime
sudo apt-get install -y --no-install-recommends \
automake \
binutils \
binutils-aarch64-linux-gnu \
bison \
build-essential \
ca-certificates \
cmake \
crossbuild-essential-arm64 \
curl \
flex \
g++ \
g++-aarch64-linux-gnu \
gcc-9 \
gcc-9-aarch64-linux-gnu \
git \
libelf-dev \
libelf-dev:arm64 \
libmnl-dev \
libtool \
make \
Expand All @@ -51,42 +35,42 @@ runs:
python2 \
python3 \
python3-pip \
llvm \
unzip
update-alternatives --install /usr/bin/python python /usr/bin/python2 1
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 2
update-alternatives --install /usr/bin/aarch64-linux-gnu-gcc aarch64-linux-gnu-gcc /usr/bin/aarch64-linux-gnu-gcc-9 3
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 2
- name: Download cilium/image-tools
shell: bash
run: |
mkdir -p src/workspace/bin src/workspace/usr/local/bin src/workspace/usr/lib src/image-tools
mkdir -p cilium/src/workspace/bin cilium/src/workspace/usr/local/bin cilium/src/workspace/usr/lib cilium/src/image-tools
curl -sSLf https://github.com/cilium/image-tools/archive/${{ inputs.image-tools_version }}.tar.gz | \
tar zxf - --strip-components 1 -C src/image-tools
tar zxf - --strip-components 1 -C cilium/src/image-tools
- name: Build llvm
shell: bash
run: |
cd src/image-tools
images/llvm/checkout-llvm.sh
images/llvm/build-llvm-native.sh
mv /out/linux/amd64/bin/clang /out/linux/amd64/bin/llc /out/linux/amd64/bin/llvm-objcopy ../workspace/bin
cd cilium/src/image-tools
sudo images/llvm/checkout-llvm.sh
sudo images/llvm/build-llvm-native.sh
sudo mv /out/linux/amd64/bin/clang /out/linux/amd64/bin/llc /out/linux/amd64/bin/llvm-objcopy ../workspace/bin
- name: Build bpftool
shell: bash
run: |
cd src/image-tools
images/bpftool/checkout-linux.sh
images/bpftool/build-bpftool-native.sh
mv /out/linux/amd64/bin/bpftool ../workspace/usr/local/bin/
cd cilium/src/image-tools
sudo images/bpftool/checkout-linux.sh
sudo images/bpftool/build-bpftool-native.sh
sudo mv /out/linux/amd64/bin/bpftool ../workspace/usr/local/bin/
- name: Build iproute2
shell: bash
run: |
cd src/image-tools
cd cilium/src/image-tools
sed -i -e "s/libbpf-/cilium-libbpf-/g" images/iproute2/checkout-libbpf.sh
images/iproute2/checkout-libbpf.sh
images/iproute2/build-libbpf-native.sh
images/iproute2/checkout-iproute2.sh
images/iproute2/build-iproute2-native.sh
mv /out/linux/amd64/lib64/libbpf* ../workspace/usr/lib/
mv /out/linux/amd64/bin/ip /out/linux/amd64/bin/tc /out/linux/amd64/bin/ss ../workspace/usr/local/bin/
sudo images/iproute2/checkout-libbpf.sh
sudo images/iproute2/build-libbpf-native.sh
sudo images/iproute2/checkout-iproute2.sh
sudo images/iproute2/build-iproute2-native.sh
sudo mv /out/linux/amd64/lib64/libbpf* ../workspace/usr/lib/
sudo mv /out/linux/amd64/bin/ip /out/linux/amd64/bin/tc /out/linux/amd64/bin/ss ../workspace/usr/local/bin/
3 changes: 2 additions & 1 deletion .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ jobs:
github_token: ${{ secrets.GITHUB_TOKEN }}

build_cilium:
runs-on: ubuntu-22.04
runs-on: neco-containers-ubuntu-20.04
steps:
- uses: actions/checkout@v4
- name: Build cilium-agent image
Expand All @@ -223,3 +223,4 @@ jobs:
yamory_token: ${{ secrets.YAMORY_ACCESS_TOKEN }}
cilium-proxy_version: ad831bdec4c93feeb2378aa9e1847c936ada6ef7
image-tools_version: ff22ba3bff1010f4a2dd76ede789663c3beaf8d2
scan: "true"
2 changes: 1 addition & 1 deletion cilium/.dockerignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
*
!TAG
!workspace
!src/workspace
!*.patch
12 changes: 6 additions & 6 deletions cilium/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ RUN mkdir -p ${DESTDIR} \


FROM build-base as builder
COPY workspace/bin/llvm-objcopy /bin/
COPY workspace/bin/clang workspace/bin/llc /bin/
COPY ./src/workspace/bin/llvm-objcopy /bin/
COPY ./src/workspace/bin/clang src/workspace/bin/llc /bin/
WORKDIR /go/src/github.com/cybozu-go/cilium
ARG LIBNETWORK_PLUGIN
ARG DESTDIR
Expand All @@ -61,10 +61,10 @@ RUN apt-get install -y --no-install-recommends binutils \

FROM ${UBUNTU_IMAGE}
ARG DESTDIR
COPY workspace/bin/clang workspace/bin/llc /bin/
COPY workspace/usr/local/bin /usr/local/bin
COPY workspace/usr/bin /usr/bin
COPY workspace/usr/lib /usr/lib
COPY ./src/workspace/bin/clang src/workspace/bin/llc /bin/
COPY ./src/workspace/usr/local/bin /usr/local/bin
COPY ./src/workspace/usr/bin /usr/bin
COPY ./src/workspace/usr/lib /usr/lib
# When used within the Cilium container, Hubble CLI should target the
# local unix domain socket instead of Hubble Relay.
ENV HUBBLE_SERVER=unix:///var/run/cilium/hubble.sock
Expand Down

0 comments on commit 1f5587a

Please sign in to comment.