Sounds good so far.

Note that I've done many more Maven release plugin runs and only once did I 
have a problem.  But it never worked for Om and others.

Also note that the CI server needed to use jgit.  And needed a patch from 
SCM-921.

HTH,
-Alex

On 3/19/20, 7:41 AM, "Christofer Dutz" <[email protected]> wrote:

    Hi all,
    
    I just submitted the 3rd Pull Request addressing some of the build issues 
(At least it should address all that I was told of).
    I introduced an “royale-release” profile in all modules. If you enable that 
the following changes are applied:
    
    
      *   The GPG Signing is Skipped
      *   The Changes of the maven-release-plugin:prepare goal are committed, 
but not pushed
      *   The artifacts are not deployed to Nexus, but staged in a local repo 
parallel to the checkout directory
    
    Additionally I made the build generate the required SHA512 checksum for the 
source-release and I used a setting I found today (never needed it before) to 
tell the deployment plugin to re-try, if the deployment failed (Normal is “no 
retry”) Now the plugin would retry 6 times before giving up.
    
    Probably the worst conditions I ever did a maven release, was on my way to 
ApacheCon in Montreal where I did a PLC4X release in the plane using the Skynet 
satellite connection. Guess you can’t get much worse latency, bandwidth and 
reliability-wise. But that worked, so I can’t see a reason this not working.
    
    Today I did about 10 releases of the compiler. About 5 to remote 
repositories and 5 locally. I never had a single glitch. It just worked 
perfectly.
    
    Here comes the guide to using the changes:
    
    
    Releasing Royale
    
    
    
    export 
FLASHPLAYER_DEBUGGER="/Users/christofer.dutz/Devtools/Adobe/Flash/FlashPlayer-32.0/Flash
 Player.app/Contents/MacOS/Flash Player Debugger"
    
    
    
    Compiler:
    
    
    
    mvn release:prepare -Proyale-release,option-with-swf 
-DautoVersionSubmodules=true
    
    
    
    Manually push the changes (including tags):
    
    git push origin
    
    git push origin {tag name}
    
    
    
    mvn release:perform
    
    
    
    
    
    Typedefs:
    
    
    
    mvn release:prepare -Proyale-release -DautoVersionSubmodules=true
    
    
    
    Manually push the changes (including tags):
    
    git push origin
    
    git push origin {tag name}
    
    
    
    mvn release:perform
    
    
    
    
    
    Framework:
    
    
    
    mvn release:prepare 
-Papache-release,royale-release,with-distribution,option-with-swf 
-DautoVersionSubmodules=true
    
    
    
    Manually push the changes (including tags):
    
    git push origin
    
    git push origin {tag name}
    
    
    
    mvn release:perform
    
    
    
    This is however only so complex because it’s trying to fit into the 13 step 
process. You could release every module with 2 maven commands. And one manual 
adjustment of the version properties for typedef and asjs, if you used the 
default maven release process.
    
    I really hope this helps smooth the rough sea. Please tell me if 
something’s missing.
    
    Chris
    

Reply via email to