On Fri, Mar 24, 2023 at 3:37 AM Ales Musil <[email protected]> wrote: > > On Wed, Mar 15, 2023 at 4:25 PM <[email protected]> wrote: > > > From: Numan Siddique <[email protected]> > > > > This patch adds a couple of jobs using ovn-fake-multinode. > > It first builds 2 ovn-fake-multinode container images > > - one with OVN 22.03 > > - one with present main. > > > > The first job deploys ovn-fake-multinode with the main > > OVN and runs simple tests provided by ovn-fake-multinode [1]. > > > > The second job deploys ovn-fake-multinode setup with the > > central image using OVN 22.03 and chassis image using main OVN. > > This job tests the scenario > > - ovn-northd and OVN dbs are running the most recent LTS. > > - ovn-controller is running the latest commit from the branch. > > > > [1] - > > https://github.com/ovn-org/ovn-fake-multinode/blob/main/.ci/test_basic.sh > > > > Signed-off-by: Numan Siddique <[email protected]> > > > --- > > .../workflows/ovn-fake-multinode-tests.yml | 153 ++++++++++++++++++ > > Makefile.am | 1 + > > 2 files changed, 154 insertions(+) > > create mode 100644 .github/workflows/ovn-fake-multinode-tests.yml > > > > diff --git a/.github/workflows/ovn-fake-multinode-tests.yml > > b/.github/workflows/ovn-fake-multinode-tests.yml > > new file mode 100644 > > index 0000000000..b32007f236 > > --- /dev/null > > +++ b/.github/workflows/ovn-fake-multinode-tests.yml > > @@ -0,0 +1,153 @@ > > +name: System tests using ovn-fake-multinode > > + > > +on: > > + push: > > + pull_request: > > + schedule: > > + # Run Sunday at midnight > > + - cron: '0 0 * * 0' > > + > > +concurrency: > > + group: ${{ github.workflow }}-${{ github.event.pull_request.number || > > github.run_id }} > > + cancel-in-progress: true > > + > > +jobs: > > + build: > > + env: > > + RUNC_CMD: podman > > + OS_IMAGE: "fedora:37" > > + # https://github.com/actions/runner-images/issues/6282 > > + XDG_RUNTIME_DIR: '' > > + > > + name: Build ovn-fake-multinode image > > + runs-on: ubuntu-20.04 > > + steps: > > + - name: Check out ovn-fake-multi-node > > + uses: actions/checkout@v3 > > + with: > > + repository: 'ovn-org/ovn-fake-multinode' > > + path: 'ovn-fake-multinode' > > + ref: 'v0.1' > > + > > + - name: Check out ovn > > + uses: actions/checkout@v3 > > + with: > > + path: 'ovn-fake-multinode/ovn' > > + submodules: recursive > > + > > + - name: Check out ovs master > > + uses: actions/checkout@v3 > > + with: > > + path: 'ovn-fake-multinode/ovs' > > + repository: 'openvswitch/ovs' > > + ref: 'master' > > + > > + - name: Install dependencies > > + run: | > > + sudo apt update > > + sudo apt-get install -y podman > > + > > + - name: Build ovn-fake-multi-node main image > > + run: | > > + set -x > > + sudo -E ./ovn_cluster.sh build > > + mkdir -p /tmp/_output > > + sudo podman save ovn/ovn-multi-node:latest > > > /tmp/_output/ovn_main_image.tar > > + working-directory: ovn-fake-multinode > > + > > + - name: Checkout ovn branch-22.03 > > + uses: actions/checkout@v3 > > + with: > > + path: 'ovn-fake-multinode/ovn' > > + submodules: recursive > > + ref: 'branch-22.03' > > + > > + - name: Build ovn-fake-multi-node 22.03 image > > + run: | > > + set -x > > + sudo -E ./ovn_cluster.sh build > > + mkdir -p /tmp/_output > > + sudo podman tag ovn/ovn-multi-node:latest ovn/ovn-multi-node:22.03 > > + sudo podman save ovn/ovn-multi-node:22.03 > > > /tmp/_output/ovn_22_03_image.tar > > + working-directory: ovn-fake-multinode > > + > > + - uses: actions/upload-artifact@v3 > > + with: > > + name: test-main-image > > + path: /tmp/_output/ovn_main_image.tar > > + > > + - uses: actions/upload-artifact@v3 > > + with: > > + name: test-22-03-image > > + path: /tmp/_output/ovn_22_03_image.tar > > + > > + multinode-tests: > > + runs-on: ubuntu-20.04 > > + timeout-minutes: 5 > > + env: > > + RUNC_CMD: podman > > + OS_IMAGE: "fedora:37" > > + CENTRAL_IMAGE: ${{ matrix.cfg.central_image }} > > + # Disable SSL for now. Revisit this if required. > > + ENABLE_SSL: no > > + # https://github.com/actions/runner-images/issues/6282 > > + XDG_RUNTIME_DIR: '' > > + > > + name: multinode tests ${{ join(matrix.cfg.*, ' ') }} > > + needs: [build] > > + strategy: > > + fail-fast: false > > + matrix: > > + cfg: > > + - { central_image: "ovn/ovn-multi-node:latest" } > > + - { central_image: "ovn/ovn-multi-node:22.03" } > > + > > + steps: > > + > > + - name: Free up disk space > > + run: sudo eatmydata apt-get remove --auto-remove -y aspnetcore-* > > dotnet-* libmono-* mono-* msbuild php-* php7* ghc-* zulu-* > > + > > + - uses: actions/download-artifact@v3 > > + with: > > + name: test-main-image > > + > > + - uses: actions/download-artifact@v3 > > + with: > > + name: test-22-03-image > > + > > + - name: Load podman image > > + run: | > > + sudo podman load --input ovn_main_image.tar > > + sudo podman load --input ovn_22_03_image.tar > > + > > + - name: Check out ovn-fake-multi-node > > + uses: actions/checkout@v3 > > + with: > > + repository: 'ovn-org/ovn-fake-multinode' > > + path: 'ovn-fake-multinode' > > + ref: 'v0.1' > > + > > + - name: Install dependencies > > + run: | > > + sudo apt update > > + sudo apt-get install -y podman openvswitch-switch > > + sudo systemctl start openvswitch-switch > > + sudo ovs-vsctl show > > + > > + - name: Start basic cluster > > + run: | > > + sudo -E ./ovn_cluster.sh start > > + sudo podman exec -it ovn-central ovn-nbctl show > > + sudo podman exec -it ovn-central ovn-appctl -t ovn-northd version > > + sudo podman exec -it ovn-chassis-1 ovn-appctl -t ovn-controller > > version > > + working-directory: ovn-fake-multinode > > + > > + - name: Run basic test script > > + run: | > > + sudo ./.ci/test_basic.sh > > + working-directory: ovn-fake-multinode > > + > > + - name: Stop cluster > > + run: | > > + sudo -E ./ovn_cluster.sh stop > > + working-directory: ovn-fake-multinode > > diff --git a/Makefile.am b/Makefile.am > > index 8c60d4a719..6d84888a29 100644 > > --- a/Makefile.am > > +++ b/Makefile.am > > @@ -95,6 +95,7 @@ EXTRA_DIST = \ > > .ci/ovn-kubernetes/custom.patch \ > > .github/workflows/test.yml \ > > .github/workflows/ovn-kubernetes.yml \ > > + .github/workflows/ovn-fake-multinode-tests.yml \ > > boot.sh \ > > $(MAN_FRAGMENTS) \ > > $(MAN_ROOTS) \ > > -- > > 2.39.1 > > > > _______________________________________________ > > dev mailing list > > [email protected] > > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > > > > Hi Numan, > > the patch looks good to me however it fails during checkout of branch-23.03 > [0]. > Can you please check it out? >
Hi Ales, Looks to me github CI issue. I pushed the patch to my local repo and the build was successful - https://github.com/numansiddique/ovn/actions/runs/4511944868 But the tests couldn't run due to some timeout issue. (Looks like some issue with GH CI again). I can repost the patches again if you prefer. Thanks Numan > https://github.com/ovsrobot/ovn/actions/runs/4428108041/jobs/7766704569 > > Thanks, > Ales > > -- > > Ales Musil > > Senior Software Engineer - OVN Core > > Red Hat EMEA <https://www.redhat.com> > > [email protected] IM: amusil > <https://red.ht/sig> > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
