This is an automated email from the ASF dual-hosted git repository. sjanc pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/mynewt-newt.git
commit 22f5f88f3ad0b5eaeabcf73e14e3c6492d4d6856 Author: Szymon Janc <[email protected]> AuthorDate: Fri Oct 16 22:01:21 2026 +0200 ci: Clone only needed repositories in commands test newt upgrade cloned all apache-mynewt-core dependencies, about 5 GB, three times per run. Replace the project.yml created by newt new with one that allows only repositories needed to build the test targets. The initial upgrade takes 42 seconds instead of 262 locally. Do not download all repositories again with a shallow clone, the sysinit test covers shallow clones now. Remove apache-mynewt-nimble instead of apache-mynewt-mcumgr, which is no longer cloned for apache-mynewt-core master, to test that a missing repository is downloaded again, and check that it was. Assisted-by: Claude:claude-opus-5-5 --- .github/newt_commands/project.yml | 40 +++++++++++++++++++++++++++++++++++++ .github/workflows/test_commands.yml | 6 +++--- 2 files changed, 43 insertions(+), 3 deletions(-) diff --git a/.github/newt_commands/project.yml b/.github/newt_commands/project.yml new file mode 100644 index 00000000..ab2d881e --- /dev/null +++ b/.github/newt_commands/project.yml @@ -0,0 +1,40 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +project.name: "newt_commands" + +project.repositories: + - apache-mynewt-core + +repository.apache-mynewt-core: + type: github + vers: 0.0.0 + user: apache + repo: mynewt-core + +# apache-mynewt-core depends on many repositories, clone only those needed +# to build the targets used by the tests. +project.repositories.allowed: + - apache-mynewt-core + - apache-mynewt-nimble + - arm-CMSIS_5 + - mbedtls + - mcuboot + - nordic-nrfx + - tinycbor diff --git a/.github/workflows/test_commands.yml b/.github/workflows/test_commands.yml index 7c3d8207..46440e17 100644 --- a/.github/workflows/test_commands.yml +++ b/.github/workflows/test_commands.yml @@ -56,6 +56,7 @@ jobs: newt help newt version newt new project + cp .github/newt_commands/project.yml project/ cp -r .github/targets/nordic_pca10056_btshell project/targets cd project/ newt upgrade -v --escape=false apache-mynewt-core apache-mynewt-nimble @@ -83,11 +84,10 @@ jobs: newt target cmake nordic_pca10056_btshell newt target dep nordic_pca10056_btshell newt target revdep nordic_pca10056_btshell - rm -rf repos - newt upgrade --shallow=1 newt upgrade -v - rm -rf repos/apache-mynewt-mcumgr + rm -rf repos/apache-mynewt-nimble newt upgrade -v + test -d repos/apache-mynewt-nimble/nimble - name: Test commands 2 if: matrix.os == 'ubuntu-latest' run: |
