Add and update README.md files for CI script removal
This commit is contained in:
parent
fc2b56e68c
commit
74c7e21f6c
|
@ -1,70 +1,5 @@
|
||||||
Blender Buildbot
|
Moved Scripts
|
||||||
================
|
=============
|
||||||
|
|
||||||
Code signing
|
Scripts have been moved to own git repo
|
||||||
------------
|
Only configurations remain here and is used with new pipeline
|
||||||
|
|
||||||
Code signing is done as part of INSTALL target, which makes it possible to sign
|
|
||||||
files which are aimed into a bundle and coming from a non-signed source (such as
|
|
||||||
libraries SVN).
|
|
||||||
|
|
||||||
This is achieved by specifying `worker_codesign.cmake` as a post-install script
|
|
||||||
run by CMake. This CMake script simply involves an utility script written in
|
|
||||||
Python which takes care of an actual signing.
|
|
||||||
|
|
||||||
### Configuration
|
|
||||||
|
|
||||||
Client configuration doesn't need anything special, other than variable
|
|
||||||
`SHARED_STORAGE_DIR` pointing to a location which is watched by a server.
|
|
||||||
This is done in `config_builder.py` file and is stored in Git (which makes it
|
|
||||||
possible to have almost zero-configuration buildbot machines).
|
|
||||||
|
|
||||||
Server configuration requires copying `config_server_template.py` under the
|
|
||||||
name of `config_server.py` and tweaking values, which are platform-specific.
|
|
||||||
|
|
||||||
#### Windows configuration
|
|
||||||
|
|
||||||
There are two things which are needed on Windows in order to have code signing
|
|
||||||
to work:
|
|
||||||
|
|
||||||
- `TIMESTAMP_AUTHORITY_URL` which is most likely set http://timestamp.digicert.com
|
|
||||||
- `CERTIFICATE_FILEPATH` which is a full file path to a PKCS #12 key (.pfx).
|
|
||||||
|
|
||||||
## Tips
|
|
||||||
|
|
||||||
### Self-signed certificate on Windows
|
|
||||||
|
|
||||||
It is easiest to test configuration using self-signed certificate.
|
|
||||||
|
|
||||||
The certificate manipulation utilities are coming with Windows SDK.
|
|
||||||
Unfortunately, they are not added to PATH. Here is an example of how to make
|
|
||||||
sure they are easily available:
|
|
||||||
|
|
||||||
```
|
|
||||||
set PATH=C:\Program Files (x86)\Windows Kits\10\App Certification Kit;%PATH%
|
|
||||||
set PATH=C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64;%PATH%
|
|
||||||
```
|
|
||||||
|
|
||||||
Generate CA:
|
|
||||||
|
|
||||||
```
|
|
||||||
makecert -r -pe -n "CN=Blender Test CA" -ss CA -sr CurrentUser -a sha256 ^
|
|
||||||
-cy authority -sky signature -sv BlenderTestCA.pvk BlenderTestCA.cer
|
|
||||||
```
|
|
||||||
|
|
||||||
Import the generated CA:
|
|
||||||
|
|
||||||
```
|
|
||||||
certutil -user -addstore Root BlenderTestCA.cer
|
|
||||||
```
|
|
||||||
|
|
||||||
Create self-signed certificate and pack it into PKCS #12:
|
|
||||||
|
|
||||||
```
|
|
||||||
makecert -pe -n "CN=Blender Test SPC" -a sha256 -cy end ^
|
|
||||||
-sky signature ^
|
|
||||||
-ic BlenderTestCA.cer -iv BlenderTestCA.pvk ^
|
|
||||||
-sv BlenderTestSPC.pvk BlenderTestSPC.cer
|
|
||||||
|
|
||||||
pvk2pfx -pvk BlenderTestSPC.pvk -spc BlenderTestSPC.cer -pfx BlenderTestSPC.pfx
|
|
||||||
```
|
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
Pipeline Config
|
||||||
|
===============
|
||||||
|
|
||||||
|
Scripts have been moved to own git repo
|
||||||
|
This branched based confiration is used by the new build pipeline for the `update-code` step
|
||||||
|
|
||||||
|
It will soon be user ../utils/make_update.py script
|
||||||
|
|
||||||
|
Both buildbot and developers will use the same conconfigurations.
|
|
@ -0,0 +1,5 @@
|
||||||
|
Make Utility Scripts
|
||||||
|
====================
|
||||||
|
|
||||||
|
Scripts used only by developers for now
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
Moved Scripts
|
||||||
|
=============
|
||||||
|
|
||||||
|
Scripts have been moved to own git repo
|
||||||
|
Only configurations remain here and is used with new pipeline
|
|
@ -0,0 +1,5 @@
|
||||||
|
Moved Scripts
|
||||||
|
=============
|
||||||
|
|
||||||
|
Scripts have been moved to own git repo
|
||||||
|
Only configurations remain here and is used with new pipeline
|
|
@ -1,82 +1,5 @@
|
||||||
create_msix_package
|
Moved Scripts
|
||||||
===================
|
=============
|
||||||
|
|
||||||
This tool is used to create MSIX packages from a given ZiP archive. The MSIX
|
Scripts have been moved to own git repo
|
||||||
package is distributed mainly through the Microsoft Store. It can also be
|
Only configurations remain here and is used with new pipeline
|
||||||
installed when downloaded from blender.org. For that to work the MSIX package
|
|
||||||
needs to be signed.
|
|
||||||
|
|
||||||
Requirements
|
|
||||||
============
|
|
||||||
|
|
||||||
* MakeAppX.exe - this tool is distributed with the Windows 10 SDK and is used to build the .appx package.
|
|
||||||
* MakePri.exe - this tool is distributed with the Windows 10 SDK and is used to generate a resources file.
|
|
||||||
* SignTool.exe - this tool is distributed with the Windows 10 SDK and is used to sign the .appx package.
|
|
||||||
* Python 3 (3.7 or later tested) - to run the create_msix_package.py script
|
|
||||||
* requests module - can be installed with `pip install requests`
|
|
||||||
* PFX file (optional, but strongly recommended) - for signing the resulting MSIX
|
|
||||||
package. **NOTE:** If the MSIX package is not signed when uploaded to the Microsoft
|
|
||||||
store the validation and certification process can take up to three full
|
|
||||||
business day.
|
|
||||||
|
|
||||||
Usage
|
|
||||||
=====
|
|
||||||
|
|
||||||
On the command-line:
|
|
||||||
```batch
|
|
||||||
set VERSION=2.83.4.0
|
|
||||||
set URL=https://download.blender.org/release/Blender2.83/blender-2.83.4-windows64.zip
|
|
||||||
set PUBID=CN=PUBIDHERE
|
|
||||||
set PFX=X:\path\to\cert.pfx
|
|
||||||
set PFXPW=pwhere
|
|
||||||
|
|
||||||
python create_msix_package.py --version %VERSION% --url %URL% --publisher %PUBID% --pfx %PFX% --password %PFXPW%
|
|
||||||
```
|
|
||||||
|
|
||||||
Result will be a MSIX package with the name `blender-2.83.4-windows64.msix`.
|
|
||||||
With the above usage it will be signed. If the signing options are left out the
|
|
||||||
package will not be signed.
|
|
||||||
|
|
||||||
Optional arguments
|
|
||||||
==================
|
|
||||||
|
|
||||||
In support of testing and developing the manifest and scripts there are a few
|
|
||||||
optional arguments:
|
|
||||||
|
|
||||||
* `--skipdl` : If a `blender.zip` is available already next to the tool use this
|
|
||||||
to skip actual downloading of the archive designated by `--url`. The latter
|
|
||||||
option is still required
|
|
||||||
* `--overwrite` : When script fails the final clean-up may be incomplete leaving
|
|
||||||
the `Content` folder with its structure. Specify this argument to automatically
|
|
||||||
clean up this folder before starting to seed the `Content` folder
|
|
||||||
* `--leavezip` : When specified leave the `blender.zip` file while cleaning up
|
|
||||||
all other intermediate files, including the `Content` folder. This is useful
|
|
||||||
to not have to re-download the same archive from `--url` on each usage
|
|
||||||
|
|
||||||
|
|
||||||
What it does
|
|
||||||
============
|
|
||||||
|
|
||||||
The tool creates in the directory it lives a subfolder called `Content`. This is
|
|
||||||
where all necessary files are placed.
|
|
||||||
|
|
||||||
The `Assets` folder is copied to the `Content` folder.
|
|
||||||
|
|
||||||
From the application manifest template a version with necessary parts replaced as
|
|
||||||
their actual values as specified on the command-line is realized. This manifest controls the packaging of Blender into the MSIX format.
|
|
||||||
|
|
||||||
Next the tool downloads the designated ZIP archive locally as blender.zip. From
|
|
||||||
this archive the files are extracted into the `Content\Blender` folder, but skip
|
|
||||||
the leading part of paths in the ZIP. We want to write the files to the
|
|
||||||
content_blender_folder where blender.exe ends up as
|
|
||||||
`Content\Blender\blender.exe`, and not
|
|
||||||
`Content\Blender\blender-2.83.4-windows64\blender.exe`
|
|
||||||
|
|
||||||
Once the extraction is completed the MakeAppX tool is executed with the `Content`
|
|
||||||
folder as input. The result will be the MSIX package with the name in the form
|
|
||||||
`blender-X.YY.Z-windows64.msix`.
|
|
||||||
|
|
||||||
If the PFX file and its password are given on the command-line this MSIX package
|
|
||||||
will be signed.
|
|
||||||
|
|
||||||
All intermediate files and directories will be removed.
|
|
||||||
|
|
Loading…
Reference in New Issue