New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes for release #638

Open
rnveach opened this Issue Jan 14, 2018 · 9 comments

Comments

Projects
None yet
2 participants
@rnveach
Copy link
Contributor

rnveach commented Jan 14, 2018

https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/How-to-release-sevntu.checkstyle

do clone

This should be a prerequisite and not required for every release by same person.
Commands should have clean and anything else needed.

Move external repositories outside of project folder and place in /temp directory.

rm -rf $REPO_HOME_DIR/gh-pages
#prepare folders for update-site and our release maven repository
mkdir $REPO_HOME_DIR/gh-pages
cd $REPO_HOME_DIR/gh-pages
git init
git remote add origin https://github.com/sevntu-checkstyle/sevntu.checkstyle.git
git fetch origin gh-pages:refs/remotes/origin/gh-pages
git checkout gh-pages

https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/SevNTU-plugin-for-EclipseCS-plugin-compilation
Step 2.

Don't delete and re-create external repositories . Do fetch, reset, and remove extra files.

rm -rf $REPO_HOME_DIR/gh-pages

https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/How-to-release-sevntu.checkstyle
Before 2 we must do fetch and create new branch off origin/master .

https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/How-to-release-sevntu.checkstyle
Step 2 (do compilation of eclipse-CS plugin) needs to be merged (partially or fully) to step 4's deploy-all . If it is missed, error results in build.

[ERROR] Internal error: java.lang.RuntimeException: No solution found because the problem is unsatisfiable.: [Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.checkstyle 0.0.0.; Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.core 0.0.0.; Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.ui 0.0.0.; No solution found because the problem is unsatisfiable.] -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.RuntimeException: No solution found because the problem is unsatisfiable.: [Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.checkstyle 0.0.0.; Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.core 0.0.0.; Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.ui 0.0.0.; No solution found because the problem is unsatisfiable.]
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:121)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: java.lang.RuntimeException: No solution found because the problem is unsatisfiable.: [Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.checkstyle 0.0.0.; Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.core 0.0.0.; Unable to satisfy dependency from eclipsecs-sevntu-plugin 1.27.0 to bundle net.sf.eclipsecs.ui 0.0.0.; No solution found because the problem is unsatisfiable.]
    at org.eclipse.tycho.p2.util.resolution.AbstractResolutionStrategy.newResolutionException(AbstractResolutionStrategy.java:98)
    at org.eclipse.tycho.p2.util.resolution.ProjectorResolutionStrategy.resolve(ProjectorResolutionStrategy.java:88)
    at org.eclipse.tycho.p2.util.resolution.AbstractResolutionStrategy.resolve(AbstractResolutionStrategy.java:63)
    at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:166)
    at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:103)
    at org.eclipse.tycho.p2.resolver.P2DependencyResolver.doResolveDependencies(P2DependencyResolver.java:352)
    at org.eclipse.tycho.p2.resolver.P2DependencyResolver.resolveDependencies(P2DependencyResolver.java:325)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject(DefaultTychoResolver.java:107)
    at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:75)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:266)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
    ... 11 more
@rnveach

This comment has been minimized.

Copy link
Contributor

rnveach commented Jan 14, 2018

One final thought.
Is there a reason we can't use https://github.com/checkstyle/contribution/tree/master/releasenotes-builder to build the release notes for sevntu. It should also be able to handle the social media postings.

@romani romani added the approved label Jan 30, 2018

@romani

This comment has been minimized.

Copy link
Member

romani commented Jan 30, 2018

@rnveach , yes , all that could be beneficial, eclipse-cs build is already in travis.

Is there a reason we can't use

we should, just need to smb to make it happen.
posting to social is still not used by me as there was problems and it not clear for me how to organize all that passwords .... it is doable. if you have time and desire - please do.
I never had a time to finish this step. I would love to make release completely automated.

@rnveach

This comment has been minimized.

Copy link
Contributor

rnveach commented Jan 30, 2018

posting to social is still not used by me as there was problems and it not clear for me how to organize all that passwords .... it is doable.

I see no issues in contributions for it. Please create some with any thoughts on what you think should be done.

@romani

This comment has been minimized.

Copy link
Member

romani commented Jan 31, 2018

there is checkstyle/checkstyle#3365 , I still do not know exact plan on how to make it secure as password could be shown in logs, and release process is still interactive (require passwords typing)

@rnveach

This comment has been minimized.

Copy link
Contributor

rnveach commented Feb 27, 2018

https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/SevNTU-plugin-for-EclipseCS-plugin-compilation

Checksout to latest stable version (in example case it is 8.7.0) :

Checkout should be done based on what sevntu-checks defines in its POM.
Different version won't work when breaking changes are introduced.

@rnveach

This comment has been minimized.

Copy link
Contributor

rnveach commented Jul 1, 2018

Swap git url for https where possible.
https://github.com/checkstyle/eclipse-cs.git

So I didn't realize but cloning from https requires you to give your credentials everytime you push back to the https.
The main reason I was avoiding ssh cloning/pushing is because LUbuntu fails on public keys with the SSH. It turns out you have to configure LUbuntu to get around this as it doesn't support it by default.
I never dealt with this problem before because eclipse remembers the user/pass.

rnveach added a commit to rnveach/sevntu.checkstyle that referenced this issue Jul 2, 2018

@rnveach rnveach added this to the 1.30.0 milestone Jul 2, 2018

rnveach added a commit that referenced this issue Jul 2, 2018

@rnveach

This comment has been minimized.

Copy link
Contributor

rnveach commented Jul 2, 2018

Some minor improvements to script.

Confirm release numbers before continuing (display and pause until enter).
Verify token is valid before doing anything. Can confirm old milestone.
Examine deploy to maven to remove retesting. Other sections already tested everything.
Add date to gh-pages (checkstyle/contribution#320)
Automate making release big text. (Edit tag, add description, publish release) - section 8.2
Automate social network. - section 9
Fix git commands to use ssh instead of https.

Whole section 6 can't be automated?

@romani

This comment has been minimized.

Copy link
Member

romani commented Jul 2, 2018

Whole section 6 can't be automated?

it can be automated, just make sure you clone such repos by ssh , do sed substitution, push changes to remote (without PR).

kariem added a commit to kariem/sevntu.checkstyle that referenced this issue Jul 26, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment