Commit Graph
100 Commits
Author SHA1 Message Date
Stephane Nicoll 1485d9af82 Stop setting executable flag outside of project generation 2019-02-11 15:27:53 +01:00
Stephane Nicoll 08c785b952 Use build tag to infer the build system
Stop using the type's prefix to infer the build system to use as the
build tag in the metadata is supposed to provide that information.

See gh-817
2019-02-11 14:37:35 +01:00
Stephane Nicoll c98f59e8f2 Remove deprecated stsId
Closes gh-820
2019-02-11 12:46:00 +01:00
Stephane Nicoll de15e826b8 Improve configuration guide 2019-02-11 12:31:27 +01:00
Stephane Nicoll 0ed3bdddaa Add basic section about new generator API 2019-02-11 12:23:12 +01:00
Stephane Nicoll 4658162d7c Polish 2019-02-11 11:22:45 +01:00
Stephane Nicoll cbb60c45e1 Allow to filter available Spring Boot versions
This commit adds a new InitializrMetadataUpdateStrategy callback
interface that can be used to customize what should happen when the
metadata has to be refreshed.

Closes gh-816
2019-02-08 16:42:45 +01:00
Stephane Nicoll fe4d05d1f6 Upgrade to JUnit Jupiter 5.4.0 2019-02-08 13:21:44 +01:00
Stephane Nicoll b97b9f9350 Migrate from slf4j to spring-jcl logger
Closes gh-819
2019-02-08 13:16:23 +01:00
Stephane Nicoll 9dc3cc65d1 Polish module dependencies 2019-02-08 13:01:32 +01:00
Stephane Nicoll d5580cd985 Remove unused ProjectResourceLocator 2019-02-08 11:03:47 +01:00
Stephane Nicoll cd3b274112 Rationalize exception management 2019-02-08 11:00:04 +01:00
Stephane Nicoll 478c0c41c6 Relocate Agent to web module 2019-02-08 10:56:41 +01:00
Stephane Nicoll b6657211f6 Review TemplateRenderer abstraction
Closes gh-818
2019-02-08 10:53:49 +01:00
Stephane Nicoll 6e9f542560 Polish 2019-02-08 10:24:59 +01:00
5e04746746 Add Spring-based project contributors
This commit adds an optional module that gathers the opinions that are
used to generate a Spring Boot project.

Closes gh-340

Co-authored-by: Madhura Bhave <mbhave@pivotal.io>
Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
2019-02-08 09:50:35 +01:00
0d5efd24ba Add support for customizable project generation
This commit adds a project generation infrastructure based on the
abstraction defined thus far. Each project is described by a
`ProjectDescription` that provides the basic information about the
project such as language, build system, packaging, platform version
and more.

Each project runs in a dedicated `ProjectApplicationContext` where
contributors and customizers are elected to generate the project.

Customizers are meant to update the model based on the
`ProjectDescription` and other factors while contributors consume
models to generate project assets (build files, source files, etc).

Because project generation runs in a dedicated context, components can
be flagged with special conditions that enable them only when necessary.
Several conditions are provided in this commit to enable a component
based on the language, build system, packaging, platform version or
requested dependency.

See gh-340

Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
Co-authored-by: Madhura Bhave <mbhave@pivotal.io>
2019-02-08 09:50:34 +01:00
Stephane Nicoll b5ba883b02 Add Groovy language support
This commit provides a Groovy language implementation with a writer that
can generate a `.groovy` source file based on a configurable model.

Closes gh-813
2019-02-08 09:50:34 +01:00
Stephane Nicoll bdfa852675 Add Kotlin language support
This commit provides a Kotlin language implementation with a writer that
can generate a `.kt` source file based on a configurable model.

See gh-813
2019-02-08 09:50:34 +01:00
Stephane NicollandAndy Wilkinson b6e675de40 Add writer with indent support
This commit adds an `IndentingWriter` with a factory that supports
different indenting option according to a content identifier (e.g. a
language).

Closes gh-812

Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
2019-02-08 09:50:34 +01:00
Stephane Nicoll 3fa03b8438 Move metadata to a dedicated module
This commit moves the `metadata` package to a dedicated
`initializr-metadata` module so that it can be shared.

Closes gh-804
2019-02-08 09:50:34 +01:00
Stephane Nicoll 6ccfb69692 Promote version infrastructure to dedicated package
This commit moves `Version` and related support classes to a dedicated
package

Closes gh-811
2019-02-08 09:50:34 +01:00
Stephane Nicoll 0628829cd3 Upgrade to JUnit Jupiter 5.4.0-RC2 2019-02-07 10:53:31 +01:00
Stephane Nicoll 8c02e4093c Polish
See gh-809
2019-02-06 09:39:48 +01:00
Stephane Nicoll 8a0d413a06 Clean build assertions 2019-02-05 16:36:56 +01:00
Stephane Nicoll 73415ea21d Remove Jackson dependency on Version infrastructure
Closes gh-808
2019-02-05 10:41:16 +01:00
Stephane Nicoll ce2d210d75 Move CommandLineHelpGenerator to initializr-web
Closes gh-807
2019-02-04 17:21:12 +01:00
Stephane Nicoll f5395c07e1 Split metadata specific exception from InitializrException 2019-01-31 11:14:18 +01:00
Stephane Nicoll fab532ebd4 Upgrade to JUnit 5.4.0-RC1 2019-01-31 11:06:54 +01:00
Stephane Nicoll ea2ea08523 Initiate 0.8.0.BUILD-SNAPSHOT version 2019-01-31 10:42:34 +01:00
Stephane Nicoll 662c0b1e15 Remove reference to InitializrMetadataTestBuilder from metadata tests
This will ease the migration of the metadata to its own module
2019-01-30 14:33:41 +01:00
Stephane Nicoll 3856aef259 Add missing utility required by staging script 2019-01-30 13:56:04 +01:00
Stephane Nicoll 3878597626 Add git to CI image 2019-01-30 13:51:03 +01:00
Stephane Nicoll 6650dbad11 Improve stat document structure
Closers gh-787
2019-01-29 16:22:49 +01:00
Stephane Nicoll 1f168651db Merge pull request #794 from chtompki
* pr/794:
  Upgrade generator to Maven 3.6.0
2019-01-29 15:31:14 +01:00
Stephane Nicoll b2e10ab2f5 Update maven wrapper to Apache Maven 3.6.0 2019-01-29 15:29:06 +01:00
Stephane Nicoll b60cbabb72 Polish 2019-01-29 15:25:34 +01:00
Stephane Nicoll 0f53acc6bd Fix links
See gh-801
2019-01-29 15:17:56 +01:00
Stephane Nicoll 0a57353fd9 Harmonize doc to standard doc resources
Closes gh-801
2019-01-29 15:17:55 +01:00
Stephane Nicoll d2033da88a Add flatten maven plugin support
This commit makes sure that poms are cleaned before publishing
2019-01-29 15:08:41 +01:00
Stephane Nicoll 6a5d35f5ab Fix broken link
Closes gh-803
2019-01-29 12:42:40 +01:00
Stephane Nicoll 2b6ab498cf Polish migration to JUnit5
See gh-802
2019-01-28 14:38:54 +01:00
Stephane Nicoll 4810d8aac2 Harmonize .gitignore generation 2019-01-22 20:54:19 +01:00
Stephane Nicoll d0a851e94d Upgrade to Spring Boot 2.1.2.RELEASE 2019-01-12 08:09:43 -05:00
Stephane Nicoll 1fcf48e2fa Skip providedRuntime configuration block with war projects
Closes gh-796
2019-01-10 14:57:10 +01:00
Stephane Nicoll e34720a35a Remove hard-coded reference to Eclipse plugin
Closes gh-795
2019-01-09 15:36:00 +01:00
Stephane Nicoll 51dbc92297 Polish "Remove surrounding brackets for gradle dependencies"
Closes gh-797
2019-01-09 15:18:23 +01:00
Stephane Nicoll b17da2489c Polish 2019-01-08 09:32:41 +01:00
Stephane Nicoll e23132747b Surround sourceCompatibility with single quotes
Closes gh-791
2019-01-05 10:13:06 +01:00
Stephane Nicoll b9000f322d Allow to configure elasticsearch service with only a URI
Closes gh-789
2019-01-03 13:56:14 +01:00
Stephane Nicoll 3b88b952a0 Merge pull request #788 from wonwoo
* pr/788:
  Update examples to mention Java 11
2019-01-01 11:01:55 +01:00
Stephane Nicoll 8a4cd3d6a1 Fix use of deprecated API 2018-12-31 16:57:52 +01:00
Stephane Nicoll b58df93e12 Polish 2018-12-27 16:53:03 +01:00
Stephane Nicoll af39236360 Harmonize Groovy code format
Closes gh-785
2018-12-13 13:42:11 +01:00
Stephane Nicoll 3868019f87 Simply repository definition with Maven
Closes gh-782
2018-12-12 11:25:13 +01:00
Stephane Nicoll 8e6b5e9cf5 Remove default packaging from generated pom
Closes gh-780
2018-12-11 10:25:05 +01:00
Stephane Nicoll c3079c5609 Polish 2018-12-11 09:54:24 +01:00
Stephane Nicoll 87b6a320fc Polish Kotlin code format 2018-12-10 15:09:45 +01:00
Stephane Nicoll fc7cc42d62 Polish code format 2018-12-10 15:02:22 +01:00
Stephane Nicoll d6ce909892 Update documentation to describe how to run smoke tests
Closes gh-774
2018-12-06 14:13:38 +01:00
Stephane Nicoll 742db270d8 Stop registering java.version as a VersionProperty 2018-12-06 14:08:45 +01:00
Stephane Nicoll bba9eb7a33 Polish generated pom
This commit removes two useless properties that are already contributed
by `spring-boot-starter-parent`.
2018-12-06 13:49:09 +01:00
Stephane Nicoll 4a75ad6b21 Polish Maven pom structure 2018-12-05 16:36:40 +01:00
Stephane Nicoll a6c62d57c5 Upgrade to Spring Boot 2.2.1.RELEASE 2018-12-05 10:40:22 +01:00
Stephane Nicoll 185e18cd5e Prevent project prior to Spring Boot 1.5 to be generated
See gh-763
2018-11-29 10:35:06 +01:00
Stephane Nicoll f5d440506e Simplify project generation version checks
This commit simplifies project generation by only checking for supported
Spring Boot version (i.e. 1.5 and later) and therefore removing any
logic that is specified to a non supported version.

Concretely, initializr is no longer able to generate a project for a
Spring Boot version prior to 1.5

Closes gh-763
2018-11-29 10:16:50 +01:00
Stephane Nicoll dbd865a526 Adapt test suite to more recent Spring Boot versions
See gh-763
2018-11-29 10:16:50 +01:00
Stephane Nicoll da1655d183 Adapt test suite to more recent Spring Boot versions
See gh-763
2018-11-29 10:16:40 +01:00
Stephane Nicoll 2a7b8f782d Upgrade to Gradle 4.10.2
Closes gh-779
2018-11-28 14:14:09 +01:00
Stephane Nicoll c96991382a Simplify Gradle support
Remove support for Gradle 2 and simplify script generation by only
supporting the recommended structure as of Gradle 3.4

Closes gh-778
2018-11-28 13:56:49 +01:00
Stephane Nicoll 9c5dfb34e9 Fix version format for Gradle versions
Closes gh-777
2018-11-27 17:57:36 +01:00
Stephane Nicoll 4ca5c99c47 Polish CI slack messages 2018-11-22 15:41:31 +01:00
Stephane Nicoll af0f15b153 Remove legacy STS support
Closes gh-766
2018-11-22 15:23:58 +01:00
Stephane Nicoll d5b616cdb2 Fix duplication of dependencies with alias
This commit fixes `getAllDependencies()` to stop returning duplicates
when a dependency declares an alias.

Closes gh-772
2018-11-20 17:54:05 +01:00
Stephane Nicoll 614280d287 Remove integration with circleci
Closes gh-768
2018-11-20 17:15:24 +01:00
Stephane Nicoll 76b853a4e4 Enable CI maven cache 2018-11-09 11:20:58 +01:00
Stephane Nicoll 6037debe0a Add Concourse build badge 2018-11-09 10:45:15 +01:00
Stephane Nicoll 8cd203f2e6 Trigger build on code change 2018-11-09 10:41:34 +01:00
Stephane Nicoll 490778552a Move initializr-service to a separate repository
This commit moves the configuration of the start.spring.io website to a
dedicated github repository.

See https://github.com/spring-io/start.spring.io

Closes gh-656
2018-11-08 17:27:43 +01:00
Stephane Nicoll c05ed7cf38 Complete migration to Spring Boot 2.1.0 2018-11-07 08:17:03 +01:00
Stephane Nicoll 27d3514687 Upgrade to Spring Boot 2.1.0.RELEASE 2018-11-06 08:03:26 +01:00
Stephane Nicoll 41f37027c6 Review jpa facet support
Closes gh-762
2018-11-05 17:47:48 +01:00
Stephane Nicoll c71d78a840 Merge pull request #761 from joshiste
* pr/761:
  Polish "Upgrade to Spring Boot Admin 2.1.0"
  Upgrade to Spring Boot Admin 2.1.0
2018-11-05 17:18:42 +01:00
Stephane Nicoll c5e494373e Polish "Upgrade to Spring Boot Admin 2.1.0"
Closes gh-761
2018-11-05 17:17:55 +01:00
Stephane Nicoll b2ae85b40b Disable third party entries with Spring Boot 2.1 until we hear from them 2018-11-01 17:00:24 +09:00
Stephane Nicoll cdee263c0b Polish 2018-11-01 16:51:51 +09:00
Stephane Nicoll 39dd9792cd Do not map spring-cloud-fonction-stream with Spring Boot 2.1+
Closes gh-759
2018-11-01 16:45:03 +09:00
Stephane Nicoll 73bbd32a42 Merge pull request #752 from govi20
* pr/752:
  Polish "Polish local variables and lambda names"
  Polish local variables and lambda names
  Polish
2018-10-28 07:26:00 +09:00
Stephane Nicoll a61d85f711 Polish "Polish local variables and lambda names"
Closes gh-752
2018-10-28 07:24:51 +09:00
Stephane Nicoll 44f0abad48 Polish 2018-10-28 07:20:02 +09:00
Stephane Nicoll fef9345c5b Polish 2018-10-26 21:54:45 +09:00
Stephane Nicoll 509864405c Merge pull request #756 from pivotal-dylan-roberts
* pr/756:
  Upgrade to Spring Cloud Services 2.0.2.RELEASE
2018-10-26 21:51:43 +09:00
Stephane Nicoll 551badaf8e Merge pull request #755 from pivotal-dylan-roberts
* pr/755:
  Upgrade to Spring Cloud Services 1.6.6.RELEASE
2018-10-26 21:50:38 +09:00
Stephane Nicoll f2f4ed180d Merge pull request #754 from ryanjbaxter
* pr/754:
  Upgrade to Spring Cloud Finchley.SR2
2018-10-24 16:14:59 +02:00
Stephane Nicoll f00dc80157 Merge pull request #753 from joshiste
* pr/753:
  Upgrade to Spring Boot Admin 2.0.4
2018-10-23 08:42:50 +02:00
Stephane Nicoll 133fd9eda8 Merge pull request #750 from ryanjbaxter
* pr/750:
  Upgrade to Spring Cloud Edgware.SR5
2018-10-17 08:39:18 +02:00
Stephane Nicoll f345992f7e Upgrade to Spring Boot 2.0.6.RELEASE 2018-10-16 21:32:54 +02:00
Stephane Nicoll c5b6e3c25d Merge pull request #745 from Microsoft
* pr/745:
  Use Azure Spring Boot Starter as dependency
2018-10-10 11:31:41 +02:00
Stephane Nicoll 68671bbdc9 Fix version mapping for Spring Cloud GCP
See gh-742
2018-10-02 10:37:19 +02:00
Stephane Nicoll cb4922916c Merge pull request #730 from javaducky
* pr/730:
  Polish "Fix deprecated Gradle dependency configuration"
  Fix deprecated Gradle dependency configuration
2018-09-28 15:50:45 -04:00