Azure pipeline building, tasting and releasing

Discussion related to the Engine functionality, implementations and API.
User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Azure pipeline building, tasting and releasing

Post by Dade » Mon Oct 15, 2018 3:39 pm

GitHub has recently been acquired by Microsoft and they are now offering a free and unlimited (for open source) building, testing and releasing pipeline on Azure (the MS cloud service).
This is a big step forward compared Trevis-CI where there is a one hour limit on the process time so I'm not even able to get a full build (i.e. I have to upload some pre-built library).

This is can potentially lead some major improvement:

- automatic full compilation after any commit of OpenCL and not OpenCL version for Windows, Linux and MacOS;
- automatic running all unit tests for all versions mentioned above (this can easily take days);
- automatic release of executables for all versions mentioned above (aka daily builds);

I'm currently developing this solution at https://dev.azure.com/LuxCoreRender/LuxCoreRender and I have a working version of the automatic compilation/test/upload of No-OpenCL version for Linux.

For Developers: if you give me your Microsoft username, I can add you to the project.
Support LuxCoreRender project with salts and bounties

User avatar
B.Y.O.B.
Developer
Posts: 1732
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Azure pipeline building, tasting and releasing

Post by B.Y.O.B. » Mon Oct 15, 2018 4:09 pm

Dade wrote:
Mon Oct 15, 2018 3:39 pm
- automatic release of executables for all versions mentioned above (aka daily builds);
Who wants to add an "automatically update to latest daily build" feature to BlendLuxCore? :mrgreen:
For people who want the latest bugs and features.
Support LuxCoreRender project with salts and bounties

lacilaci
Posts: 346
Joined: Fri May 04, 2018 5:16 am

Re: Azure pipeline building, tasting and releasing

Post by lacilaci » Mon Oct 15, 2018 5:51 pm

So can we have daily builds for blender??

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Azure pipeline building, tasting and releasing

Post by Dade » Mon Oct 15, 2018 6:53 pm

lacilaci wrote:
Mon Oct 15, 2018 5:51 pm
So can we have daily builds for blender??
That is the idea (in the long term).

P.S. Indeed, I discovered that claimed "unlimited run time" is limited to 60 minutes by default (!!!) however I should have found a setting to have a 360 minutes limit, testing right now.
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Azure pipeline building, tasting and releasing

Post by Dade » Tue Oct 16, 2018 3:38 pm

Dade wrote:
Mon Oct 15, 2018 6:53 pm
P.S. Indeed, I discovered that claimed "unlimited run time" is limited to 60 minutes by default (!!!) however I should have found a setting to have a 360 minutes limit, testing right now.
It works and 360 mins is something I can work with.

BTW, daily builds will be available here: https://github.com/LuxCoreRender/LuxCor ... tag/latest
It is a a release automatically created by Azure pipeline.
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Azure pipeline building, tasting and releasing

Post by Dade » Fri Oct 19, 2018 8:07 pm

Now https://github.com/LuxCoreRender/LuxCor ... tag/latest includes both the Linux OpenCL-less and OpenCL version of the daily build.
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Azure pipeline building, tasting and releasing

Post by Dade » Tue Oct 23, 2018 9:43 am

@Acasta69: I have moved OS specific scripts from scripts/azurepipeline to scripts/azurepipeline/linux and scripts/azurepipeline/windows directories.
Support LuxCoreRender project with salts and bounties

acasta69
Developer
Posts: 58
Joined: Tue Jan 09, 2018 3:45 pm

Re: Azure pipeline building, tasting and releasing

Post by acasta69 » Tue Oct 23, 2018 2:39 pm

The first automated Windows build (no openCL) seems to have succeeded.
However I am a bit unsure about how to get the resulting package here:
https://github.com/LuxCoreRender/LuxCor ... tag/latest

@Dade: when I am at this stage:
Untitled.png
I've never seen this before so I am unsure about how to proceed with authorizations.
Is it ok to use OAuth with my GitHub account? Or is this something better done by you using different authorizations?
Windows 10 64 bits, i7-4770 3.4 GHz, RAM 16 GB, GTX 970 4GB v382.05

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Azure pipeline building, tasting and releasing

Post by Dade » Tue Oct 23, 2018 3:40 pm

acasta69 wrote:
Tue Oct 23, 2018 2:39 pm
The first automated Windows build (no openCL) seems to have succeeded.
However I am a bit unsure about how to get the resulting package here:
https://github.com/LuxCoreRender/LuxCor ... tag/latest

@Dade: when I am at this stage:
Untitled.png
I've never seen this before so I am unsure about how to proceed with authorizations.
Is it ok to use OAuth with my GitHub account? Or is this something better done by you using different authorizations?
I upload the built files trough a specific Azure pipeline plugin, it is under "Releases => Edit Pipeline", click on "Release to GitHub/1 job, 3 tasks". I have added one more task to upload the windows build and queued a new build. Let's see if it works.

All this stuff is totally undocumented and we have to proceed blindly and with trial and errors :roll:
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Azure pipeline building, tasting and releasing

Post by Dade » Tue Oct 23, 2018 6:18 pm

Dade wrote:
Tue Oct 23, 2018 3:40 pm
I upload the built files trough a specific Azure pipeline plugin, it is under "Releases => Edit Pipeline", click on "Release to GitHub/1 job, 3 tasks". I have added one more task to upload the windows build and queued a new build. Let's see if it works.
It looks like it worked. The .zip is no on https://github.com/LuxCoreRender/LuxCor ... tag/latest

The only thing missing seems the pyluxcoretools.exe created by the create-standalone.bat with PyInstaller :?:
Support LuxCoreRender project with salts and bounties

Post Reply