Giter Site home page Giter Site logo

uber-build's Introduction

Uber build script for Scala IDE

One build script to rule them all.

Build script design to unify all compound builds needed around Scala IDE. It supports rebuilding everything from source, starting from Scala all the way to the product, as well as producing the Scala IDE release or providing CI support for the Scala pull requests validator.

The main usages are:

  • generate the Scala IDE releases (IDE, plugins and bundle), with or without publishing.
  • check integration of Scala IDE and the plugins nighlty.
  • perform Scala IDE builds as part of the Scala pull request validator
  • rebuild Scala pr validation builds locally, to study failures
  • build Scala IDE against any custom version of Scala, to test changes made to the compiler

The current build works for Scala 2.10.x and 2.11.x, and Scala IDE 4.0.x.

Invocation

./uber-build <config_file> [scala_version] [scala_git_hash]
  • config_file - the config file containing the build parameters. The uncommented lines override the values from config/default.conf.
  • scala_git_hash - overrides the value SCALA_GIT_HASH defined in the config file.
  • scala_version overrides the value SCALA_VERSION defined in the config file.

scala-local-build

Builds Scala IDE from any source version of Scala.

  • base config file: scala-local-build.conf
  • relevant config parameters:
    • SCALA_GIT_REPO - modify to use Scala hash from a different repository
  • extra command line parameters: <scala_version> <scala_git_hash>

release, release-dryrun

Generates and publishes (only with release) a Scala IDE release, build on a released version of Scala.

  • example config files: release-30x.conf, release-40x-210.conf
  • relevant config parameters:
    • OPERATION - keep it, and commit with, release-dryrun most of the time. Switch to release only when doing the real release, after having done a successful dryrun.
    • SCALA_VERSION - the version of Scala to use
    • SCALA_IDE_VERSION_TAG - b? for special builds, m? for milestones, rc? for RCs, v for final versions.
    • *_GIT_BRANCH - the source to use for each project. Should be a tag when doing the publishing.
    • *_GIT_REPO - usefull to test tags or small fixes on your forks, before pushing the changes to the main repos.
  • no extra command line parameters

nightly

Builds all Scala IDE projects from the master branches. Used nightly to check that all masters build together.

  • example config files: nightly-4.0.x-juno-2.10.conf
  • relevant config parameters:
    • *_GIT_BRANCH - all should be on master
    • PLUGINS - list the plugins to build, all plugins may no work with all configurations.
  • no extra command line parameters

scala-pr-validator

Runs a build up to Scala IDE. The goal is to check that a Scala PR is not going to break Scala IDE and its dependencies. (to document)

  • config file: validator.conf
  • config parameters should not be modified.
  • This build requires an extra maven repository to fetch pre-build Scala binaries. The simplest way to set it up is to add the following in the ~/.m2/settings.xml file.
    <profile>
      <id>pr-scala</id>
      <repositories>
        <repository>
          <id>scala-pr-builds</id>
          <url>http://private-repo.typesafe.com/typesafe/scala-pr-validation-snapshots/</url>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
    </profile>
  • to enable the profile, extra Maven parameters are needed. Use:
export MAVEN_ARGS="-Ppr-scala"
  • extra command line parameters: <scala_version>

scala-pr-rebuild

(to document)

List of published releases so far

Below follows a list of published releases with the exact command that was used to build each release.

(Before this page was created we used to keep these information in a spreadsheet document on Google Drive)

v4.7.1-rc3

  • With Eclipse 4.7(Oxygen)

uber-build.sh at tag 4.7.1-rc3 with config/release-47x-212.conf

v4.7.1-rc2

  • With Eclipse 4.7(Oxygen)

uber-build.sh at tag 4.7.1-rc2 with config/release-47x-212.conf

v4.7.1-rc1

  • With Eclipse 4.7(Oxygen)

uber-build.sh at tag 4.7.1-rc1 with config/release-47x-212.conf

v4.7.0-vfinal

  • With Eclipse 4.7(Oxygen)

uber-build.sh at tag 4.7.0-vfinal with config/release-47x-212.conf

v4.7.0-rc1

  • With Eclipse 4.7(Oxygen)

uber-build.sh at tag 4.7.0-rc1 with config/release-47x-212.conf

v4.6.0-rc2

  • With Eclipse 4.6(Neon)

uber-build.sh at tag 4.6.0-rc2 with config/release-46x-212.conf

v4.6.0-rc1

  • With Eclipse 4.6(Neon)

uber-build.sh at tag 4.6.0-rc1 with config/release-46x-212.conf

v4.5.0-vfinal

  • With Eclipse 4.6(Neon)

uber-build.sh at tag 4.5.0-vfinal with config/release-45x-211.conf

v4.5.0-rc2

  • With Eclipse 4.6(Neon)

uber-build.sh at tag 4.5.0-rc2 with config/release-45x-211.conf

v4.5.0-rc1

  • With Eclipse 4.6(Neon)

uber-build.sh at tag 4.5.0-rc1 with config/release-45x-211.conf

v4.4.1-vfinal

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.4.1-vfinal with config/release-44x-211-luna.conf

v4.4.0-vfinal

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.4.0-vfinal with config/release-44x-211-luna.conf

v4.4.0-rc2

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.4.0-rc2 with config/release-44x-211-luna.conf

v4.4.0-rc1

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.4.0-rc1 with config/release-44x-211-luna.conf

v4.3.0-vfinal

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.3.0-vfinal with config/release-43x-211-luna.conf

v4.3.0-rc1

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.3.0-rc1 with config/release-43x-211-luna.conf

v4.2.0-vfinal

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.2.0-vfinal with config/release-42x-211-luna.conf

v4.2.0-rc3

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.2.0-rc3 with config/release-41x-211-luna.conf

v4.2.0-rc2

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.2.0-rc2 with config/release-41x-211-luna.conf

v4.2.0-rc1

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.2.0-rc1 with config/release-41x-211-luna.conf

v4.1.1-vfinal

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.1.1-vfinal with config/release-41x-211-luna.conf

v4.1.0-vfinal_2.11.7

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.1.0-vfinal_2.11.7 with config/release-41x-211-luna.conf

v4.1.0-vfinal

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.1.0-vfinal with config/release-41x-211-luna.conf

v4.1.0-rc2

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.1.0-rc2 with config/release-41x-211-luna.conf

v4.1.0-rc1

  • With Eclipse 4.4(Luna)

uber-build.sh at tag 4.1.0-rc1 with config/release-41x-211-luna.conf

v4.0.0-vfinal on Scala 2.11.6

  • With Scala 2.11.4 / Eclipse 4.3(Kepler)

uber-build.sh at tag 4.0.0-vfinal-2.11.6 with config/release-40x-211.conf

  • With Scala 2.11.4 / Eclipse 4.4(Luna)

uber-build.sh at tag 4.0.0-vfinal-2.11.6 with config/release-40x-211-luna.conf

v4.0.0-vfinal

  • With Scala 2.11.4 / Eclipse 4.3(Kepler)

uber-build.sh at tag 4.0.0-vfinal with config/release-40x-211.conf

  • With Scala 2.11.4 / Eclipse 4.4(Luna)

uber-build.sh at tag 4.0.0-vfinal with config/release-40x-211-luna.conf

v4.0.0-rc4

  • With Scala 2.11.4 / Eclipse 4.3(Kepler)

uber-build.sh at tag 4.0.0-rc4 with config/release-40x-211.conf

  • With Scala 2.11.4 / Eclipse 4.4(Luna)

uber-build.sh at tag 4.0.0-rc4 with config/release-40x-211-luna.conf

v4.0.0-rc1

  • With Scala 2.11.2 / Eclipse 4.3(Kepler)

uber-build.sh at tag 4.0.0-rc1 with config/release-40x-211.conf

  • With Scala 2.11.2 / Eclipse 4.4(Luna)

uber-build.sh at tag 4.0.0-rc1 with config/release-40x-211-luna.conf

v4.0.0-m3

  • With Scala 2.11.1 / Eclipse 4.3(Kepler)

uber-build.sh at tag 4.0.0-m3 with config/release-40x-211.conf

  • With Scala 2.11.1 / Eclipse 4.4(Luna)

uber-build.sh at tag 4.0.0-m3 with config/release-40x-211-luna.conf

v4.0.0-m2

  • With Scala 2.10.4 / Eclipse 4.3

uber-build.sh at tag 4.0.0-m2 with config/release-40x-210.conf

  • With Scala 2.11.1 / Eclipse 4.3

uber-build.sh at tag 4.0.0-m2 with config/release-40x-211.conf

  • With Scala 2.11.1 / Eclipse 4.4

uber-build.sh at tag 4.0.0-m2-luna with config/release-40x-211-luna.conf

v3.0.4-vfinal

  • With Scala 2.11.0 / Eclipse 4.3

uber-build.sh at tag 3.0.4-vfinal-2.11.0-1 with config/release-30x-2.11.x.conf

  • With Scala 2.11.1 / Eclipse 4.3

uber-build.sh at tag 3.0.4-vfinal-2.11.1 with config/release-30x-2.11.x.conf

  • With Scala 2.11.2 / Eclipse 4.3

uber-build.sh at tag 3.0.4-vfinal-2.11.2 with config/release-30x-2.11.x.conf

v3.0.3-vfinal

  • With Scala 2.10.4 / Eclipse 4.3

uber-build.sh at tag 3.0.3-vfinal-2.10.4 with config/release-30x.conf

v3.0.4-rc03

v3.0.4-rc01

v3.0.3-rc01

  • With Scala 2.10.4-RC1 / Eclipse 4.3

used uber-build.sh config/release-30x.conf

v3.0.2-patch01

  • With Scala 2.10.3 / Eclipse 4.3

This is a SPECIAL RELEASE for a customer, published at http://download.scala-ide.org/patch-releases/3.0.2.v-patch01/

(using tags 3.0.2-patch01 in the uber-build and scala-ide repositories)

used uber-build.sh config/release-3.0.x

v4.0.0-M1

  • With Scala 2.10.4-SNAPSHOT / Eclipse 4.3

used uber-build.sh config/release-40x-210.conf

v3.0.2-vfinal

  • With Scala 2.10.3 / Eclipse 4.3

used uber-build.sh config/release-3.0.x

v3.0.2-rc01

  • With Scala 2.10.3-RC3 for Eclipse 4.2

      ./build-full-ide.sh ECLIPSE_PLATFORM=juno \
         VERSION_TAG=rc01 \
         SCALA_VERSION=2.10.3-RC3 \
         SBT_VERSION=0.13.0 \
         SBT_IDE_VERSION=0.13.0-on-2.10.3-RC2-for-IDE \
         SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
         SCALARIFORM_BRANCH=scala-ide-3.0.1\
         SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
         SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
         SCALA_IDE_BRANCH=release/scala-ide-3.0.x-juno \
         WORKSHEET_BRANCH=0.2.1 \
         WORKSHEET_VERSION_TAG=v \
         SCALASEARCH_BRANCH=0.2.0 \
         SCALASEARCH_VERSION_TAG=v \
         PLAY_BRANCH=0.4.1 \
         TYPESAFE_IDE_VERSION_TAG=3.0.2-rc01 \
         SIGN_BUILD=true \
         BUILD_PLUGINS=true \
         KEYSTORE_GIT_REPO=$1 \
         KEYSTORE_PASS=$2 \
         PUBLISH=dev
    
  • With Scala 2.10.3-RC2 for Eclipse 4.2

 ./build-full-ide.sh ECLIPSE_PLATFORM=juno \
    VERSION_TAG=rc01 \
    SCALA_VERSION=2.10.3-RC2 \
    SBT_VERSION=0.13.0 \
    SBT_IDE_VERSION=0.13.0-on-2.10.3-RC2-for-IDE \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=scala-ide-3.0.1\
    SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
    SCALA_IDE_BRANCH=release/scala-ide-3.0.x-juno \
    WORKSHEET_BRANCH=0.2.1 \
    WORKSHEET_VERSION_TAG=v \
    SCALASEARCH_BRANCH=0.2.0 \
    SCALASEARCH_VERSION_TAG=v \
    PLAY_BRANCH=0.4.1 \
    TYPESAFE_IDE_VERSION_TAG=3.0.2-rc01 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev

v4.0.0-b03

  • With Scala 2.11.0-M5 for Eclipse 4.2

Use this tag.

Had to introduce a new variable SBT_IDE_VERSION to inject from the outside the version of the Zinc artifacts needed by the build.

   ./build-full-ide.sh ECLIPSE_PLATFORM=juno \
     VERSION_TAG=b03 \
     SCALA_VERSION=2.11.0-M5 \
     SBT_VERSION=0.13.0 \
     SBT_IDE_VERSION=0.13.0-on-2.11.0-M5-for-IDE \
     SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
     SCALARIFORM_BRANCH=scala-ide-3.0.1\
     SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
     SCALA_REFACTORING_BRANCH=0.6.2-S_4.0.0-b02 \
     SCALA_IDE_BRANCH=4.0.0-b03 \
     WORKSHEET_BRANCH=0.2.1-S_4.0.0-b02 \
     WORKSHEET_VERSION_TAG=b01 \
     SCALASEARCH_BRANCH=0.2.0 \
     SCALASEARCH_VERSION_TAG=v \
     TYPESAFE_IDE_VERSION_TAG=4.0.0-b03 \
     SIGN_BUILD=true \
     BUILD_PLUGINS=true \
     KEYSTORE_GIT_REPO=$1 \
     KEYSTORE_PASS=$2 \
     PUBLISH=dev

v3.0.1-vfinal / 2.10.3-RC1

  • with Scala 2.10.3-RC1 on Indigo

CHECK OUT TAG release/3.0.x of the uber-build script (the new uber-build depends on having dbuild-artifacts for Sbt/zinc.

  ./build-full-ide.sh \
    ECLIPSE_PLATFORM=indigo \
    VERSION_TAG=v \
    SCALA_VERSION=2.10.3-RC1 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/sbt/sbt.git \
    SBT_BRANCH=v0.13.0-M2 \
    SBT_VERSION=0.13.0-M2 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=scala-ide-3.0.1 \
    SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
    SCALA_IDE_BRANCH=3.0.1-vfinal \
    WORKSHEET_BRANCH=0.2.0 \
    PLAY_BRANCH=0.4.0 \
    SCALASEARCH_BRANCH=0.1.0 \
    TYPESAFE_IDE_VERSION_TAG=3.0.1-vfinal \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev
  • with Scala 2.10.3-RC1 on Juno/Kepler

CHECK OUT TAG release/3.0.x of the uber-build script (the new uber-build depends on having dbuild-artifacts for Sbt/zinc.

  ./build-full-ide.sh \
    ECLIPSE_PLATFORM=juno \
    VERSION_TAG=v \
    SCALA_VERSION=2.10.3-RC1 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/sbt/sbt.git \
    SBT_BRANCH=v0.13.0-M2 \
    SBT_VERSION=0.13.0-M2 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=scala-ide-3.0.1 \
    SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
    SCALA_IDE_BRANCH=3.0.1-vfinal-juno \
    WORKSHEET_BRANCH=0.2.0 \
    PLAY_BRANCH=0.4.0 \
    SCALASEARCH_BRANCH=0.1.0 \
    TYPESAFE_IDE_VERSION_TAG=3.0.1-vfinal \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev

v4.0.0-b02

  • With Scala 2.11.0-M4 for Eclipse 4.2

It is using a slightly modified version of the uber-build, to managed the fact that sbinary 0.4.2-SNAPSHOT is used instead of 0.4.1: https://github.com/skyluc/uber-build/tree/build-4.0.0-b02

   ./build-full-ide.sh ECLIPSE_PLATFORM=juno \
     VERSION_TAG=b02 \
     SCALA_VERSION=2.11.0-M4 \
     SBINARY_BRANCH=0.4.2-S_4.0.0-b02 \
     SBT_GIT_REPO=git://github.com/scala-ide/xsbt \
     SBT_BRANCH=v0.13.0-RC2 \
     SBT_VERSION=0.13.0-RC2 \
     SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
     SCALARIFORM_BRANCH=scala-ide-3.0.1\
     SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
     SCALA_REFACTORING_BRANCH=0.6.2-S_4.0.0-b02 \
     SCALA_IDE_BRANCH=4.0.0-b02 \
     WORKSHEET_BRANCH=0.2.1-S_4.0.0-b02 \
     WORKSHEET_VERSION_TAG=b01 \
     TYPESAFE_IDE_VERSION_TAG=4.0.0-b02 \
     SIGN_BUILD=true \
     BUILD_PLUGINS=true \
     KEYSTORE_GIT_REPO=$1 \
     KEYSTORE_PASS=$2 \
     PUBLISH=dev

v3.0.1-vfinal

  • With Scala 2.10.2 for Eclipse 3.7
   ./build-full-ide.sh ECLIPSE_PLATFORM=indigo \
     VERSION_TAG=v \
     SCALA_VERSION=2.10.2 \
     SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
     SBT_GIT_REPO=git://github.com/sbt/sbt.git \
     SBT_BRANCH=v0.13.0-M2 \
     SBT_VERSION=0.13.0-M2 \
     SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
     SCALARIFORM_BRANCH=scala-ide-3.0.1 \
     SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
     SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
     SCALA_IDE_BRANCH=3.0.1-vfinal \
     WORKSHEET_BRANCH=0.2.0 \
     PLAY_BRANCH=0.3.0 \
     SCALASEARCH_BRANCH=0.1.0 \
     TYPESAFE_IDE_VERSION_TAG=3.0.1-vfinal \
     SIGN_BUILD=true \
     BUILD_PLUGINS=true \
     KEYSTORE_GIT_REPO=$1 \
     KEYSTORE_PASS=$2 \
     PUBLISH=stable
  • With Scala 2.10.2 for Eclipse 3.8, 4.2 and 4.3
   ./build-full-ide.sh ECLIPSE_PLATFORM=juno \
     VERSION_TAG=v \
     SCALA_VERSION=2.10.2 \
     SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
     SBT_GIT_REPO=git://github.com/sbt/sbt.git \
     SBT_BRANCH=v0.13.0-M2 \
     SBT_VERSION=0.13.0-M2 \
     SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
     SCALARIFORM_BRANCH=scala-ide-3.0.1\
     SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
     SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
     SCALA_IDE_BRANCH=3.0.1-vfinal-juno \
     WORKSHEET_BRANCH=0.2.0 \
     PLAY_BRANCH=0.3.0 \
     SCALASEARCH_BRANCH=0.1.0 \
     TYPESAFE_IDE_VERSION_TAG=3.0.1-vfinal \
     SIGN_BUILD=true \
     BUILD_PLUGINS=true \
     KEYSTORE_GIT_REPO=$1 \
     KEYSTORE_PASS=$2 \
     PUBLISH=stable

v3.0.1-rc02

  • With Scala 2.10.2 for Eclipse 3.7
   ./build-full-ide.sh ECLIPSE_PLATFORM=indigo \
   VERSION_TAG=rc02 \
   SCALA_VERSION=2.10.2 \
   SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
   SBT_GIT_REPO=git://github.com/sbt/sbt.git \
   SBT_BRANCH=v0.13.0-M2 \
   SBT_VERSION=0.13.0-M2 \
   SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
   SCALARIFORM_BRANCH=scala-ide-3.0.1\
   SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
   SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
   SCALA_IDE_BRANCH=3.0.1-rc2 \
   WORKSHEET_BRANCH=0.2.0 \
   TYPESAFE_IDE_VERSION_TAG=3.0.1-rc02 \
   SIGN_BUILD=true \
   BUILD_PLUGINS=true \
   KEYSTORE_GIT_REPO=$1 \
   KEYSTORE_PASS=$2 \
   PUBLISH=dev
  • With Scala 2.10.2 for Eclipse 4.2
    ./build-full-ide.sh ECLIPSE_PLATFORM=juno \
   VERSION_TAG=rc02 \
   SCALA_VERSION=2.10.2 \
   SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
   SBT_GIT_REPO=git://github.com/sbt/sbt.git \
   SBT_BRANCH=v0.13.0-M2 \
   SBT_VERSION=0.13.0-M2 \
   SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
   SCALARIFORM_BRANCH=scala-ide-3.0.1\
   SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
   SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.1-RC2_2.10.2 \
   SCALA_IDE_BRANCH=3.0.1-rc2-juno \
   WORKSHEET_BRANCH=0.2.0 \
   TYPESAFE_IDE_VERSION_TAG=3.0.1-rc02 \
   SIGN_BUILD=true \
   BUILD_PLUGINS=true \
   KEYSTORE_GIT_REPO=$1 \
   KEYSTORE_PASS=$2 \
   PUBLISH=dev

v3.0.1-rc01

  • With Scala 2.10.2 for Eclipse 3.7
./build-full-ide.sh \
    ECLIPSE_PLATFORM=indigo \
    VERSION_TAG=rc01 \
    SCALA_VERSION=2.10.2 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/sbt/sbt.git \
    SBT_BRANCH=v0.13.0-M2 \
    SBT_VERSION=0.13.0-M2 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=scala-ide-3.0.1\
    SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \
    SCALA_IDE_BRANCH=3.0.1-rc1 \
    WORKSHEET_BRANCH=0.2.0 \
    TYPESAFE_IDE_VERSION_TAG=3.0.1-rc01 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev
  • With Scala 2.10.2 for Eclipse 4.2
./build-full-ide.sh \
    ECLIPSE_PLATFORM=juno \
    VERSION_TAG=rc01 \
    SCALA_VERSION=2.10.2 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/sbt/sbt.git \
    SBT_BRANCH=v0.13.0-M2 \
    SBT_VERSION=0.13.0-M2 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=scala-ide-3.0.1\
    SCALA_REFACTORING_GIT_REPO=git://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \
    SCALA_IDE_BRANCH=3.0.1-rc1-juno \
    WORKSHEET_BRANCH=0.2.0 \
    TYPESAFE_IDE_VERSION_TAG=3.0.1-rc01 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev

v3.0.1-b01 & v4.0.0-b01

These were "special releases" for Scala 2.10.2-RC1 and Scala 2.11.0-M3

Scala IDE Eclipse Scala Sbt Refactoring Scalariform Worksheet
2013-05-21 4.0.0-b01 Indigo 2.11.0-M3 v0.13.0-M2 0.6.2-S_SI-4.0.0-b01 0.1.4-S_SI-3.0.0-RC1 0.2.0-b01
2013-05-23 3.0.1-b01 Indigo 2.10.2-RC1 v0.13.0-M2 0.6.2-S_SI-4.0.0-b01 0.1.4-S_SI-3.0.0-RC1 0.2.0-b01
2013-05-23 3.0.1-b01 Juno 2.10.2-RC1 v0.13.0-M2 0.6.2-S_SI-4.0.0-b01 0.1.4-S_SI-3.0.0-RC1 0.2.0-b01

v3.0.0-vfinal

  • With Scala 2.9.3 for Eclipse 3.7
 ./build-full-ide.sh \
    ECLIPSE_PLATFORM=indigo \
    VERSION_TAG=v \
    SCALA_VERSION=2.9.3 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt.git \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.9.3-RC2 \
    SCALA_IDE_BRANCH=3.0.0-vfinal \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-vfinal \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=stable
  • With Scala 2.10.1 for Eclipse 3.7
./build-full-ide.sh \
    ECLIPSE_PLATFORM=indigo \
    VERSION_TAG=v \
    SCALA_VERSION=2.10.1 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt.git \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \
    SCALA_IDE_BRANCH=3.0.0-vfinal \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-vfinal \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=stable
  • With Scala 2.9.3 for Eclipse 4.2
 ./build-full-ide.sh \
    ECLIPSE_PLATFORM=juno \
    VERSION_TAG=v \
    SCALA_VERSION=2.9.3 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt.git \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.9.3-RC2 \
    SCALA_IDE_BRANCH=3.0.0-vfinal-juno \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-vfinal \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=stable
  • With Scala 2.10.1 for Eclipse 4.2
./build-full-ide.sh \
    ECLIPSE_PLATFORM=juno \
    VERSION_TAG=v \
    SCALA_VERSION=2.10.1 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt.git \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \
    SCALA_IDE_BRANCH=3.0.0-vfinal-juno \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-vfinal \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=stable

v3.0.0-rc3

  • With Scala 2.9.3 for Eclipse 3.7
 ./build-full-ide.sh \
    ECLIPSE_PLATFORM=indigo \
    VERSION_TAG=rc3 SCALA_VERSION=2.9.3 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \ <-- (This was a mistake, we should have used 0.6.0_SI-3.0.0-RC1_2.9.3-RC2)
    SCALA_IDE_BRANCH=3.0.0-RC3 \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-rc3 \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev
  • With Scala 2.10.1 for Eclipse 3.7
 ./build-full-ide.sh \
    ECLIPSE_PLATFORM=indigo \
    VERSION_TAG=rc3 \
    SCALA_VERSION=2.10.1 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \
    SCALA_IDE_BRANCH=3.0.0-RC3 \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-rc3 \
    KEYSTORE_GIT_REPO=$1 KEYSTORE_PASS=$2 \
    PUBLISH=dev
  • With Scala 2.9.3 for Eclipse 4.2
 ./build-full-ide.sh \
    ECLIPSE_PLATFORM=juno \
    VERSION_TAG=rc3 \
    SCALA_VERSION=2.9.3 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \ <-- (This was a mistake, we should have used 0.6.0_SI-3.0.0-RC1_2.9.3-RC2)
    SCALA_IDE_BRANCH=3.0.0-RC3-juno \
    WORKSHEET_BRANCH=0.1.4 SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-rc3 \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev
  • With Scala 2.10.1 for Eclipse 4.2
 ./build-full-ide.sh \
    ECLIPSE_PLATFORM=juno \
    VERSION_TAG=rc3 \
    SCALA_VERSION=2.10.1 \
    SBINARY_BRANCH=0.4.1_SI-3.0.0-RC1 \
    SBT_GIT_REPO=git://github.com/scala-ide/xsbt \
    SBT_BRANCH=0.13.0-S_SI-3.0.0-RC1 \
    SCALARIFORM_GIT_REPO=git://github.com/scala-ide/scalariform.git \
    SCALARIFORM_BRANCH=0.1.4-S_SI-3.0.0-RC1 \
    SCALA_REFACTORING_GIT_REPO=https://github.com/scala-ide/scala-refactoring \
    SCALA_REFACTORING_BRANCH=0.6.0_SI-3.0.0-RC1_2.10.1-S \
    SCALA_IDE_BRANCH=3.0.0-RC3-juno \
    WORKSHEET_BRANCH=0.1.4 \
    SIGN_BUILD=true \
    BUILD_PLUGINS=true \
    TYPESAFE_IDE_VERSION_TAG=3.0.0-rc3 \
    KEYSTORE_GIT_REPO=$1 \
    KEYSTORE_PASS=$2 \
    PUBLISH=dev

uber-build's People

Contributors

adriaanm avatar dotta avatar dragos avatar huitseeker avatar jsuereth avatar kiritsuku avatar lrytz avatar skyluc avatar wpopielarski avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

uber-build's Issues

Scala PR validation is failing (problem with org.scala-refactoring.update-site)

a typical failure is:

[INFO] Adding repository file:/home/jenkins/workspace/scala-2.11.x-integrate-ide/target/scala-refactoring/org.scala-refactoring.update-site/target/site
[ERROR] Internal error: java.lang.RuntimeException: Failed to load p2 repository with ID 'scala-refactoring' from location file:/home/jenkins/workspace/scala-2.11.x-integrate-ide/target/scala-refactoring/org.scala-refactoring.update-site/target/site: No repository found at file:/home/jenkins/workspace/scala-2.11.x-integrate-ide/target/scala-refactoring/org.scala-refactoring.update-site/target/site. -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.RuntimeException: Failed to load p2 repository with ID 'scala-refactoring' from location file:/home/jenkins/workspace/scala-2.11.x-integrate-ide/target/scala-refactoring/org.scala-refactoring.update-site/target/site
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:168)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    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: Failed to load p2 repository with ID 'scala-refactoring' from location file:/home/jenkins/workspace/scala-2.11.x-integrate-ide/target/scala-refactoring/org.scala-refactoring.update-site/target/site
    at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.loadMetadataRepository(TargetPlatformFactoryImpl.java:301)
    at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.gatherExternalInstallableUnits(TargetPlatformFactoryImpl.java:269)
    at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.createTargetPlatform(TargetPlatformFactoryImpl.java:174)
    at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.createTargetPlatform(TargetPlatformFactoryImpl.java:126)
    at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.createTargetPlatform(TargetPlatformFactoryImpl.java:1)
    at org.eclipse.tycho.p2.manager.ReactorRepositoryManagerImpl.computePreliminaryTargetPlatform(ReactorRepositoryManagerImpl.java:82)
    at org.eclipse.tycho.p2.resolver.P2DependencyResolver.computePreliminaryTargetPlatform(P2DependencyResolver.java:215)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject(DefaultTychoResolver.java:99)
    at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:75)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:274)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
    ... 11 more
Caused by: org.eclipse.equinox.p2.core.ProvisionException: No repository found at file:/home/jenkins/workspace/scala-2.11.x-integrate-ide/target/scala-refactoring/org.scala-refactoring.update-site/target/site.
    at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:395)
    at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:692)
    at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
    at org.eclipse.tycho.p2.remote.RemoteMetadataRepositoryManager.loadRepository(RemoteMetadataRepositoryManager.java:59)
    at org.eclipse.tycho.p2.remote.RemoteMetadataRepositoryManager.loadRepository(RemoteMetadataRepositoryManager.java:52)
    at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.loadMetadataRepository(TargetPlatformFactoryImpl.java:297)
    ... 21 more
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/InternalErrorException
Build step 'Execute shell' marked build as failure
Archiving artifacts
Sending e-mails to: [email protected]
Notifying endpoint 'HTTP:http://scala-ci.typesafe.com:8888/jenkins'
Finished: FAILURE

it doesn't seem related to the content of the PR; there are multiple examples, e.g. scala/scala#4728, scala/scala#4725

Uploading plugins is broken if caching is off

I get errors (cp org.scala-ide.worksheet/target/site does not exist) when trying to build a release with caching off. Looks like the issue might be

function publishPlugin () {
  info "uploading $1"

  cd "${TMP_DIR}"
  rm -rf *
  P2_ID_VAR_NAME=$3_P2_ID
  cp -r "$(getCacheLocation ${!P2_ID_VAR_NAME})" site

Broken dialog between me and computer

You have $BUILD_PLUGINS=true and $SCALA_VERSION=2.11.--SNAPSHOT.
Do you really want to build plugins with the unsupported 2.11.--SNAPSHOT ? [y/N]
./build-full-ide.sh: line 131: true=: command not found

Support for Scala 2.12

To follow the progress of the different changes needed for the support of Scala 2.12

  • support in sbinary harrah/sbinary#14
  • support in sbt sbt/sbt#1396
  • support in uber-build to produce zinc nightlies for 2.12 #49
  • nightly build to publish zinc on 2.12
  • update zinc nightly to use uber-build/master
  • support in scalariform daniel-trinh/scalariform#23 daniel-trinh/scalariform#24
  • nightly build to publish scalariform on 2.12
  • update scalariform nightly to use daniel-trinh/0.1.6-SNAPSHOT
  • update scalariform nightly build symlink when using 'master' branch (scalariform-212x)
  • support in scala-refactoring
  • nightly build to publish scala-refactoring on 2.12
  • support in Scala IDE scala-ide/scala-ide#727
  • add build on 2.12 for Scala IDE pr validation
  • add nightly build for Scala IDE on 2.12
  • update scala-ide nightly to use scala-ide/master
  • update Scala IDE nightly build symlink when using 'master' branch (nightly-scala-ide-4.0.x-212x)
  • support in plugin-profiles scala-ide/plugin-profiles#4
  • release plugin-profiles
  • support in scala-worksheet 2.12-support requires new version of plugin-profiles
  • add nightly build for scala-worksheet on 2.12
  • support in scala-search 2.12-support requires new version of plugin-profiles
  • add nightly build for scala-search on 2.12
  • create composite update site for nightlies 2.12
  • support in uber-build scala-2.12
  • add nightly build for the uber-build
  • support in build-tools ?
  • support in ecosystem ?
  • re-enable Scala IDE build in scala-pr-validator for Scala 2.12

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.