Commit Graph

1574 Commits

Author SHA1 Message Date
Stephane Nicoll
88f986b7c1 Harmonize Maven build to use containers
Closes gh-996
2019-09-04 16:39:38 +02:00
Stephane Nicoll
04a78a94d6 Harmonize Gradle build to use containers
See gh-996
2019-09-04 15:47:45 +02:00
Stephane Nicoll
59f9092e2f Move build properties to dedicated container
See gh-996
2019-09-04 15:47:10 +02:00
Stephane Nicoll
3f6c98173b Move general build settings to immutable class
This commit moves the global build settings to an immutable
BuildSettings abstraction.

See gh-996
2019-09-03 10:10:22 +02:00
Stephane Nicoll
7d47786a8b Improve SourceStructure to handle source and resource assets 2019-09-02 10:19:09 +02:00
Stephane Nicoll
595050258c Move source file extension to Language abstraction
Closes gh-995
2019-08-31 09:07:06 +02:00
Stephane Nicoll
cff60c397d Improve custom project request arrangement
This commit improves the use case of configuring a custom ProjectRequest
by enforcing consistently a particular type using a generic.

As a result, `ProjectGenerationInvoker` is no longer exposed as a bean
as it is the responsibility of the custom `ProjectGenerationController`
to provide one that matches the requested `ProjectRequest` type.

See gh-990
2019-08-29 10:52:02 +02:00
Stephane Nicoll
f74370eb63 Allow binding of custom ProjectRequest
This commit allows a custom instance to easily bind incoming request
attributes to a custom ProjectRequest instance and map it to a custom
ProjectDescription as well.

Closes gh-990
2019-08-27 09:48:47 +02:00
Stephane Nicoll
d9a20ed68c Split controller endpoints
This commit splits MainController to a number of controllers with
dedicated responsibilities. This is a first step to make these features
more modular and potentially opt-in in the future.

Closes gh-994
2019-08-27 08:30:15 +02:00
Stephane Nicoll
282c92f76d Polish 2019-08-25 17:16:18 +02:00
Stephane Nicoll
0b37199b3e Polish 2019-08-25 04:41:44 +02:00
Stephane Nicoll
c36ae847fb Harmonize ProjectDescription name 2019-08-25 03:17:25 +02:00
Stephane Nicoll
286e38888c Migrate ProjectDescription to an interface
This commit migrates ProjectDescription to an interface with read-only
accessors and create a MutableProjectDescription implementation that can
be used for both purposes.

As a result, the type separation between ResolvedProjectDescription and
ProjectDescription is no longer necessary.

Closes gh-993
2019-08-25 03:03:57 +02:00
Stephane Nicoll
67de21f629 Stop using debug flag for Windows build 2019-08-25 02:34:24 +02:00
Stephane Nicoll
1a0ec74f8a Polish 2019-08-25 02:32:50 +02:00
Stephane Nicoll
91656ba0f8 Polish 2019-08-23 15:06:36 +02:00
Stephane Nicoll
ccd2ec8c30 Merge pull request #967 from LeoRamos01
* pr/967:
  Polish "Add support for Maven resources"
  Add support for Maven resources

Closes gh-967
2019-08-23 15:06:00 +02:00
Stephane Nicoll
b711ac73c9 Polish "Add support for Maven resources"
See gh-967
2019-08-23 15:03:05 +02:00
Leonardo Ramos
df62424c0e Add support for Maven resources
See gh-967
2019-08-23 13:58:11 +02:00
Stephane Nicoll
c2886679d6 Fix package tangle
Closes gh-992
2019-08-23 11:36:22 +02:00
Stephane Nicoll
ddd609c639 Move assert to AssertJ
This commit moves project-based assertions to regular AssertJ Assert
classes. `ProjectStructure` is now an assert provider so that it can
be used with the standard `assertThat` method.

Specialized assertions are provided for the supported build systems as
well as text-based content.

Closes gh-764
2019-08-22 15:24:28 +02: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
dbd1198996 Rename SourceCodeStructure to SourceStructure
This commit generalizes the main and test structure so that it can be
used for more use cases.
2019-08-21 16:09:17 +02:00
Stephane Nicoll
53a0484289 Add a way to easily create a Spring Boot starter from id 2019-08-21 11:08:47 +02:00
Stephane Nicoll
79170178ff Add missing artifact in bom
See gh-981
2019-08-21 10:59:52 +02:00
Stephane Nicoll
19ed484dc3 Add SourceCodeStructure abstraction
Closes gh-987
2019-08-19 19:09:26 +02:00
Stephane Nicoll
3d11b9daff Upgrade to Gradle 5.6
Closes gh-986
2019-08-19 08:29:53 +02:00
Stephane Nicoll
c3c20b84f9 Polish 2019-08-18 18:25:45 +02:00
Stephane Nicoll
d2a5897550 Add JUnit5 checkstyle rule 2019-08-18 14:42:53 +02:00
Stephane Nicoll
96cb299f5b Remove dependency on Spring Boot auto-configure module 2019-08-18 14:39:29 +02:00
Stephane Nicoll
a4ec276f57 Upgrade to JUnit Jupiter 5.5.1 2019-08-18 14:38:12 +02:00
Stephane Nicoll
976f290144 Harmonize logging test configuration 2019-08-18 14:35:51 +02:00
Stephane Nicoll
cd59699644 Polish 2019-08-18 14:11:31 +02:00
Stephane Nicoll
ece903e754 Add nohttp checks 2019-08-18 14:07:49 +02:00
Stephane Nicoll
dee5467bd1 http -> https 2019-08-18 14:07:02 +02:00
Stephane Nicoll
f083e6e5cd Make sure MavenBuildWriter uses https link wherever possible 2019-08-18 13:35:47 +02:00
Stephane Nicoll
11914b0630 Move formatting and checkstyle to root pom 2019-08-18 08:55:40 +02:00
Stephane Nicoll
82e637e861 Polish 2019-08-18 08:46:20 +02:00
Stephane Nicoll
14efb35afe Add note about BOM 2019-08-18 08:44:29 +02:00
Stephane Nicoll
1a67198ccb Merge pull request #984 from htztomic
* pr/984:
  Add empty line when content is wrapped

Closes gh-984
2019-08-17 17:28:28 +02:00
HaiTao Zhang
76e6271e8e Add empty line when content is wrapped
See gh-984
2019-08-17 17:28:04 +02:00
Stephane Nicoll
ff6e26463b Add Bill Of Materials
Closes gh-981
2019-08-15 07:53:46 +02:00
Stephane Nicoll
4976ba57de Fix javadoc configuration
This commit makes sure that the `initializr-metadata` module is included
and doc-related examples are not.

Closes gh-982
2019-08-14 15:25:37 +02:00
Stephane Nicoll
9520100703 Add missing package-info.java files
Closes gh-886
2019-08-14 15:19:06 +02:00
Stephane Nicoll
9c30905003 Simplify KotlinVersionResolver arrangement
This commit makes sure KotlinVersionResolver works with the actual
metadata instance used by the project to generate rather than
potentially using a different instance via the provider.

Rather than requiring such a bean to be present, the configuration
fallbacks to the metadata implementation if none is provided.
2019-08-14 14:45:24 +02:00
Stephane Nicoll
e343e3c0fc Harmonize how Spring Boot plugin is configured with Gradle
Closes gh-980
2019-08-14 14:37:56 +02:00
Stephane Nicoll
c1b1b36f25 Add a strategy to resolve the dependency management plugin version
Closes gh-977
2019-08-14 14:37:48 +02:00
Stephane Nicoll
1672c69ab9 Polish 2019-08-14 10:37:01 +02:00
Madhura Bhave
748afa124d Polish 2019-08-13 18:43:03 -07:00
Stephane Nicoll
55f0a4ad24 Merge pull request #978 from htztomic
* pr/978:
  Polish "Add support for removing build plugins"
  Add support for removing build plugins

Closes gh-978
2019-08-13 20:59:29 +02:00