Commit Graph

44 Commits

Author SHA1 Message Date
Stephane Nicoll
89e59ddca7 Upgrade to Spring Boot 3.0.0
Closes gh-1342
2022-11-24 20:28:05 +01:00
Stephane Nicoll
8d61cdd6aa Allow auto-configured caches to be overridden
This commit updates the JSR 107 cache auto-configuration to only create
a cache if it does not already exist. It also puts a specific order for
the auto-configured customizer so that another instance can run prior to
it reliably.

Closes gh-1157
2020-12-08 15:33:54 +01:00
Stephane Nicoll
a729fae5d3 Upgrade to Spring Boot 2.2.0 2019-10-17 09:00:10 +02:00
Stephane Nicoll
8abd0a8d5c Polish 2019-10-16 11:42:53 +02:00
Stephane Nicoll
e0f3e42094 Polish 2019-10-16 11:37:21 +02:00
Stephane Nicoll
d812ca8c38 Harmonize SCM information 2019-10-05 18:32:42 +01:00
Stephane Nicoll
1082ac7bf7 Extract project generation test utility to dedicated module
This commit extracts various test utilities to a dedicated
initializr-generator-test module for easier consumption. The previous
test-jar are no longer published and a dependency to this new module
should be equivalent.

This commit also cleans various resources that were located in the wrong
place. In particular initializr-generator does not know anything about
metadata anymore.

Closes gh-988
2019-08-21 16:10:06 +02:00
Stephane Nicoll
dee5467bd1 http -> https 2019-08-18 14:07:02 +02:00
Stephane Nicoll
ff6e26463b Add Bill Of Materials
Closes gh-981
2019-08-15 07:53:46 +02:00
Stephane Nicoll
e67f2bb0ac Polish "Make sure project descriptions line-wrap at a decent length"
See gh-966
2019-07-31 18:14:26 +02:00
HaiTao Zhang
4772f4219f Make sure project descriptions line-wrap at a decent length
See gh-966
2019-07-31 16:11:43 +02:00
Andy Wilkinson
b769c8d6a0 Migrate from Ant to Commons Compress
Closes gh-951
2019-07-11 15:34:33 +01:00
Stephane Nicoll
e527172282 Polish "Remove default Web UI from Initializr library"
Closes gh-860
2019-03-20 17:36:21 +01:00
Stephane Nicoll
b80e3570d8 Switch initializr-generator-spring to test dependency where applicable
Closes gh-871
2019-03-17 11:26:29 +01:00
Stephane Nicoll
9dc3cc65d1 Polish module dependencies 2019-02-08 13:01:32 +01:00
Stephane Nicoll
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
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
Madhura Bhave
e281480426 Switch project structure to use the new generator
This commit removes the former `ProjectGenerator` api based on mustache
template in favour of a new DSL infrastructure to be detailed in further
commits.

Event handling is now web-specific with a `ProjectRequest` and a
`WebProjectRequest` that gathers the base input from the request and
some additional web-specific metadata, respectively. As a consequence
the `initializr-actuator` module has now a dependency on the
`initializr-web` module.

See gh-340

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
2019-02-08 09:50:26 +01:00
Stephane Nicoll
fab532ebd4 Upgrade to JUnit 5.4.0-RC1 2019-01-31 11:06:54 +01:00
Madhura Bhave
79dc5956d5 Fix POMS for the updated release process 2019-01-30 08:24:06 -08:00
Madhura Bhave
ae937ca4bc Migrate tests to JUnit5
See gh-802
2019-01-24 10:04:00 -08: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
Spring Buildmaster
34b518d49f Next Development Version 2018-07-10 12:29:54 +00:00
Stephane Nicoll
e3d9c3c783 Prevent build failure when tests are skipped
This commit moves the generation of bundles for snippet and stubs to the
`docs` profile. This allows to successfully build the project when tests
are skipped, as long as the `docs` profile is not active.

Closes gh-665
2018-05-18 16:44:28 +02:00
Phillip Webb
0c0556c585 Add Eclipse IDE support files
Add additional files to make development with Eclipse easier.
2018-04-13 12:31:11 -07:00
Phillip Webb
6309b33ee5 Format POM.xml files
Reformat POM.xml files for consistency.
2018-04-13 12:30:14 -07:00
Spring Buildmaster
0f67d2e583 Next Development Version 2018-02-27 15:17:36 +00:00
Stephane Nicoll
63becddb94 Remove use of org.json
This commit removes all use of org.json in production code and moves
the json api to a test only dependency.

Closes gh-507
2017-12-29 15:30:44 +01:00
Spring Buildmaster
7f4db38cee Next Development Version 2017-09-18 16:00:41 +00:00
Stephane Nicoll
9a83defc4c Improve caching configuration
Rather than creating a `CacheManager` ourselves, we now rely on JCache
to provide a `CacheManager` that we'll augment with the caches that
initializr needs.

If Initializr is embedded in another app and that app uses JCache, then
its cache manager will be transparently upgraded to define the caches
that initializr needs. If not, such caches will have to be created as
part of the custom config.

Also, caching only kicks in if required at the service level.

This commit also switches the cache implementation to EhCache 3.

See gh-389
2017-03-29 12:55:29 +02:00
Stephane Nicoll
c9ca61015a Polish 2017-02-28 10:07:05 +01:00
Dave Syer
06f314dc8c Switch to Ant lib for tar/zip tasks
The commons wrapper we were using didn't support executable files
so Ant seems like the best choice ultimately, even if it has a
lot of features we don't use or need.
2017-02-25 09:31:04 +01:00
Stephane Nicoll
5296d6a05f Code formatting 2017-02-25 09:31:03 +01:00
Dave Syer
ec5a7da507 Migrate initializr-web to Java 2017-02-25 09:31:03 +01:00
Spring Buildmaster
e8bf50e662 Next development version 2017-02-03 13:55:17 +00:00
Stephane Nicoll
b356e233a2 Polish reference guide
See gh-295
2017-02-02 14:55:59 +01:00
Stephane Nicoll
c7953bf999 Polish contribution
Move documentation to a dedicated module (`initializr-docs`) with a test
that uses the stubs with the Spring Cloud Contract runner.

See gh-295
2017-02-02 10:21:38 +01:00
Dave Syer
b7d8d5c813 Initiate initializr documentation
This commit commit adds restdocs and stub generators and initiate
a reference guide for Initializr.

Most of the controller tests now use MockMvc via a custom version
of the MockMvcClientHttpRequestFactory (from spring-test). The
snippet names are auto-generated in the form

<HttpMethod>/<path>[/queries(/<name-value)*][/headers](/name-value)*]

when there is a comma-separated value in a header it is
abbreviated as <first-value>.MORE.

Wiremock stubs are generated in the same form under
snippets/stubs (with ".json" as the
file extension).

The controller tests that stayed as full stack use a different
base class AbstractFullStackInitializrIntegrationTests.

A long JSON body can be broken out into separate snippets
for each field (or rather a list of fields supplied by the
user). This feature was already used with hard-coded snippets
in the wiki.

See gh-295
2017-02-02 10:21:38 +01:00
Spring Buildmaster
dd02650e22 Next Development Version 2017-01-27 12:52:11 +00:00
Stephane Nicoll
b58c7a046b Switch version to 0.2.0.BUILD-SNAPSHOT
Closes gh-352
2017-01-27 13:40:45 +01:00
Dave Syer
712003b436 Switch off smoke tests by default in IDE
The Maven build now sets a System property smoke.test=true. The tests
are skipped if this is not set, so by default the IDE will not run them.
2016-09-26 16:54:30 +01:00
Stephane Nicoll
af2ae44b8d Upgrade to Spring Boot 1.4.0.RELEASE
This commit upgrades to Spring Boot 1.4.0.RELEASE and bumps to Java8. It
also migrate the cache library from Guava to Caffeeine.

The git and build information are now exposed via the `info` endpoint.

Closes gh-251
2016-07-29 12:52:53 +02:00
Stephane Nicoll
abf16f8b1a Fix typo 2016-04-14 16:09:18 +02:00
Stephane Nicoll
542ee7d91b Modularize project structure
This commit splits the feature of Spring Initializr in several modules:

* `initializr-generator` is a standalone library that is responsible for
generating projects based on a `File` directory. It has a minimal set of
dependencies and is not web-related
* `initializr-web` provides the web integration (project generation,
meta-data, etc)
* `initializr-actuator` is an optional module that can be added to
support project-generation-specific statistics

Closes gh-214
2016-04-08 12:01:38 +02:00