Azure pipeline building, tasting and releasing

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

Azure pipeline building, tasting and releasing

Post by Dade »

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
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Azure pipeline building, tasting and releasing

Post by B.Y.O.B. »

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.
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: Azure pipeline building, tasting and releasing

Post by lacilaci »

So can we have daily builds for blender??
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by Dade »

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
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by Dade »

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
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by Dade »

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
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by Dade »

@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
Developer
Posts: 472
Joined: Tue Jan 09, 2018 3:45 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by acasta69 »

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?
Support LuxCoreRender project with salts and bounties

Windows 10 64 bits, i7-4770 3.4 GHz, RAM 16 GB, GTX 970 4GB v445.87
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by Dade »

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
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Azure pipeline building, tasting and releasing

Post by Dade »

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