[U-Boot] [PATCH v2 8/8] Add Micirosoft Azure pipelines configuration

Tom Rini trini at konsulko.com
Thu Oct 24 15:01:10 UTC 2019


On Wed, Oct 23, 2019 at 08:11:52PM -0700, Bin Meng wrote:

> Microsoft Azure Pipelines provides unlimited CI/CD minutes and 10
> parallel jobs to every open source project for free [1].
> 
> This adds a configuration file for Azure Pipelines to utilize the
> free Windows VM hosted by Microsoft to ensure no build broken in
> building U-Boot host tools for Windows.
> 
> [1] https://azure.microsoft.com/en-us/blog/announcing-azure-pipelines-with-unlimited-ci-cd-minutes-for-open-source/
> 
> Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
> 
> ---
> See the build result at:
> https://dev.azure.com/bmeng/GitHub/_build/results?buildId=53
> 
> Changes in v2:
> - new patch: Add Micirosoft Azure pipelines configuration
> 
>  azure-pipelines.yml | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>  create mode 100644 azure-pipelines.yml

Thanks a lot for doing this.  I'm starting to look at what's needed so
that I can also run this automatically and perhaps evaluate it for other
uses in U-Boot as well.  One thing I would like to change is that it
looks like under pipeline settings we can specify the file and I'd like
to call this ".azure-pipelines.yml" instead to match travis/gitlab
files.

> diff --git a/azure-pipelines.yml b/azure-pipelines.yml
> new file mode 100644
> index 0000000..cc0514b
> --- /dev/null
> +++ b/azure-pipelines.yml
> @@ -0,0 +1,35 @@
> +jobs:
> +  - job: tools_only_windows
> +    displayName: 'Ensure host tools build for Windows'
> +    pool:
> +      vmImage: vs2015-win2012r2
> +    strategy:
> +      matrix:
> +        i686:
> +          MSYS_DIR: msys32
> +          BASE_REPO: msys2-ci-base-i686
> +        x86_64:
> +          MSYS_DIR: msys64
> +          BASE_REPO: msys2-ci-base
> +    steps:
> +      - script: |
> +          git clone https://github.com/msys2/$(BASE_REPO).git %CD:~0,2%\$(MSYS_DIR)
> +        displayName: 'Install MSYS2'
> +      - script: |
> +          set PATH=%CD:~0,2%\$(MSYS_DIR)\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
> +          %CD:~0,2%\$(MSYS_DIR)\usr\bin\pacman --noconfirm -Syyuu
> +        displayName: 'Update MSYS2'
> +      - script: |
> +          set PATH=%CD:~0,2%\$(MSYS_DIR)\usr\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
> +          %CD:~0,2%\$(MSYS_DIR)\usr\bin\pacman --noconfirm --needed -S make gcc bison diffutils openssl-devel
> +        displayName: 'Install Toolchain'
> +      - script: |
> +          set PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
> +          echo make tools-only_defconfig tools-only NO_SDL=1 > build-tools.sh
> +          %CD:~0,2%\$(MSYS_DIR)\usr\bin\bash -lc "bash build-tools.sh"
> +        displayName: 'Build Host Tools'
> +        env:
> +          # Tell MSYS2 we need a POSIX emulation layer
> +          MSYSTEM: MSYS
> +          # Tell MSYS2 not to ‘cd’ our startup directory to HOME
> +          CHERE_INVOKING: yes

While I start understanding overall syntax, is this particular style one
that would allow us to add in more jobs, like say all of the ones we do
in GitLab, and in that staged fashion (do all of the testsuites, then
test.py runs then world build)?  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191024/ea4071e4/attachment.sig>


More information about the U-Boot mailing list