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
        
        
        
    
    

Reply via email to