Hi Alex, regarding the credentials ... I was just surprised that Carlos didn't have to provide any credentials to push on the CI machine itself. Are you saying the RemoteDesktop thing is doing some weird magic in forwarding credentials from the RDP client to the Server? Just asking out of curiosity.
And regarding the reproducible builds. I did manage to get it reproducible with default maven settings, however as soon as I ran the verification on a different OS it failed because of line separator differences. There is an option to explicitly tell Java which line separator to use, however the insanely old antlr3 plugin didn't seem to like that and it crashed the VM if this was set to something else than the OS default. So I added your reproducible plugin back (but bumped the version to the latest) and with that it now worked. However it seems that the build-tools generated a completely different order of constants on mac and windows. So I updated that plugin to sort the properties before generating the output. On windows is seems to have been sorted, on mac it wasn't. Now the items are sorted on both but therefore we had to do the extra turn of releasing the build-tools. Currently we're running step 3 with updated build tools. Let's see if the output then works as we want it to. Chris Am 23.03.20, 17:11 schrieb "Alex Harui" <[email protected]>: On 3/23/20, 6:01 AM, "Christofer Dutz" <[email protected]> wrote: Here come some things we noticed while working on the release steps: * All Jenkins release emails were discarded by my email server, I had to use ponymail to read them Observations: * Step 001 * How can you push without providing credentials on the CI server? It seems that when you execute the push on the server, you are not asked for credentials. That's correct. We don't have secure password transfer from the browser to Jenkins. So that's why I mentioned the "noPush" options for Maven. The push is not performed during the Maven step, and Jenkins sends and email saying to go login over RDP and run certain Git commands to do the push. * Step 002 * It seems if we’re logged in and executed the steps on the CI, the memory is running low … better to execute the steps from a browser on a local machine, so the browser itself isn’t consuming any memory on the Server Yes, that's how we've done it. * It seems the build didn’t pick up the “-Dcom.adobe.systemIdsForWhichTheTermsOf” property so it didn’t download the playerglobal … we manually copied it there into the maven local repo. * We were having problems that the build agent is killed by windows due to low memory quite randomly. We rebooted the CI server to have it in an as clean as possible state. * We turned on the pagefile and virtual memory and set it to 5000MB * As the released version of JGit wasn’t committing the root pom, but all child poms we commented out the usage of JGit and configured the build step 001 to set the git settings before starting its magic. Now there is an additional parameter to provide “email” Changes we did: * Step 001 * Added a parameter GITUSEREMAIL * Added a command step to set the git settings before the build * Step 002 * Added the royale-release profile to the maven execution * Added the FLASHPLAYER_DEBUGGER environment variable to the jobs environment variables * Added the MAVAN_OPTS=-Xms1024m -Xmx1024m * Added the -Dcom.adobe.systemIdsForWhichTheTermsOf…. property to the build so the mavenizer downloads Adobe artifacts it’s missing * We enabled the pagefile on Windows and set it to automatically manage this. * Step 003 * Added the FLASHPLAYER_DEBUGGER environment variable to the jobs environment variables * Added the MAVAN_OPTS=-Xms1024m -Xmx1024m * Changed the location to look for artifacts to archive to “target/local-releases-dir” -> Had to adjust the verification releasesteps ant script accordingly Right now we got differences in the locally built artifacts and will investigate this after lunch. I am assuming it’s due to the line separator differences on Windows and Mac Using zlika's reproducible binary plugin, I did not see Windows vs Mac line ending differences except in one case and zlika added an option to fix it. But I think you do have to run the exact same build of Java 8. So far a status update. Chris
