grimoirelab-kibiter icon indicating copy to clipboard operation
grimoirelab-kibiter copied to clipboard

Make releases of Kibiter

Open dlumbrer opened this issue 8 years ago • 6 comments

We want to build ZIP's for each Kibiter version. This could be usefull in order to check new versions or little changes.

Kibana has by default a way to build a tar.gz of the current version that you are, doing:

npm run build

This must create the tars into KIBITER_HOME/target/, one tar for each OS. However, this command generates an error and it's impossible to continue, so we just add this option in order to avoid that error:

npm run build -- --skip-os-packages

Now, tars have been built and are in KIBITER_HOME/target/.

Important: That command don't copy the plugins don't into the plugins/ folder of the tars, so it's needed to add this line into a grunt configurations file (before the tar creation):

  • In KIBITER_HOME/tasks/build/archives.js:
async function archives({ name, buildName, zipPath, tarPath }) {
   ...
   await exec('cp', ['-rf', fromRoot("plugins/"), fromRoot("build/" + buildName + "/.")]); //This line
   await exec('tar', tarArguments);
}

dlumbrer avatar Oct 30 '17 09:10 dlumbrer

I see the first of this releases uploaded to the releases area of this repo. Thanks! Some comments about it:

  • There is only a tar.gz for Linux. Is it possible / simple to have installable files for other architectures as well?
  • The directory where it unpacks is kibana-5.6.0-SNAPSHOT-linux-x86_64. Could it be something like kibiter-5.6.0-1-linux-x86_64 (assuming that "1" means the first release of Kibiter based on Kibana 5.6.0). That way it will be more clear what yoù´ re installing.
  • The name of the file now is kibiter-5.6.0-linux-x86_64.tar.gz. For the same reasons as above, could it be kibiter-5.6.0-1-linux-x86_64.tar.gz?

jgbarah avatar Nov 04 '17 20:11 jgbarah

@jgbarah These are the solutions that I propose:

  • This is not a problem, when run npm run build -- --skip-os-packages a build of each SO is created.
  • I can change a few params in grunt archives in order to change the name and add a new tag "version" that starts with 1.

I'm going to build and add the updated releases!

dlumbrer avatar Nov 06 '17 08:11 dlumbrer

I think this is perfect, thanks!!

I suggest that you write down the process for a release in a file RELEASING.md or something like that, so that everything is clear. But we can use a pull request for that, and close this ticket if you want.

jgbarah avatar Nov 06 '17 21:11 jgbarah

I am rechecking now the full process for 6.3.1 ... it seems to be pretty similar, but the way to create now the release tar balls is:

acs@~/devel/grimoirelab-kibiter-fork-acs (venv) [integration-6.3.1-nobrand] $ node scripts/build --oss --skip-os-packages --release

Stay tuned!

acs avatar Jul 18 '18 16:07 acs

The changes needed to include the plugins in the release file, and to change the name of the release file: https://github.com/acs/grimoirelab-kibiter/commit/551e0db24630c255a3e9d8462289b905331c0b91

acs avatar Jul 18 '18 17:07 acs

For Kibiter 6.8.6 the command has changed a little:

node scripts/build --oss --skip-os-packages --release --all-platforms

dlumbrer avatar Mar 12 '20 10:03 dlumbrer