projen 0.79.4__py3-none-any.whl → 0.98.25__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- projen/__init__.py +1234 -86
- projen/_jsii/__init__.py +20 -2
- projen/_jsii/projen@0.98.25.jsii.tgz +0 -0
- projen/awscdk/__init__.py +1758 -230
- projen/build/__init__.py +290 -129
- projen/cdk/__init__.py +1030 -151
- projen/cdk8s/__init__.py +833 -109
- projen/cdktf/__init__.py +389 -50
- projen/circleci/__init__.py +35 -1
- projen/github/__init__.py +2224 -312
- projen/github/workflows/__init__.py +403 -17
- projen/gitlab/__init__.py +241 -8
- projen/java/__init__.py +471 -4
- projen/javascript/__init__.py +2276 -143
- projen/javascript/biome_config/__init__.py +5461 -0
- projen/python/__init__.py +3390 -1037
- projen/python/uv_config/__init__.py +3933 -0
- projen/release/__init__.py +1080 -138
- projen/typescript/__init__.py +992 -118
- projen/vscode/__init__.py +22 -1
- projen/web/__init__.py +1456 -163
- {projen-0.79.4.data → projen-0.98.25.data}/scripts/projen +1 -1
- {projen-0.79.4.dist-info → projen-0.98.25.dist-info}/METADATA +42 -41
- projen-0.98.25.dist-info/RECORD +28 -0
- {projen-0.79.4.dist-info → projen-0.98.25.dist-info}/WHEEL +1 -1
- projen/_jsii/projen@0.79.4.jsii.tgz +0 -0
- projen-0.79.4.dist-info/RECORD +0 -26
- {projen-0.79.4.dist-info → projen-0.98.25.dist-info}/LICENSE +0 -0
- {projen-0.79.4.dist-info → projen-0.98.25.dist-info}/top_level.txt +0 -0
projen/java/__init__.py
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
from pkgutil import extend_path
|
|
2
|
+
__path__ = extend_path(__path__, __name__)
|
|
3
|
+
|
|
1
4
|
import abc
|
|
2
5
|
import builtins
|
|
3
6
|
import datetime
|
|
@@ -8,7 +11,22 @@ import jsii
|
|
|
8
11
|
import publication
|
|
9
12
|
import typing_extensions
|
|
10
13
|
|
|
11
|
-
|
|
14
|
+
import typeguard
|
|
15
|
+
from importlib.metadata import version as _metadata_package_version
|
|
16
|
+
TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
|
|
17
|
+
|
|
18
|
+
def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
|
|
19
|
+
if TYPEGUARD_MAJOR_VERSION <= 2:
|
|
20
|
+
return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
|
|
21
|
+
else:
|
|
22
|
+
if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
|
|
23
|
+
pass
|
|
24
|
+
else:
|
|
25
|
+
if TYPEGUARD_MAJOR_VERSION == 3:
|
|
26
|
+
typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
|
|
27
|
+
typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
|
|
28
|
+
else:
|
|
29
|
+
typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
|
|
12
30
|
|
|
13
31
|
from .._jsii import *
|
|
14
32
|
|
|
@@ -37,6 +55,26 @@ from ..github import (
|
|
|
37
55
|
)
|
|
38
56
|
|
|
39
57
|
|
|
58
|
+
@jsii.enum(jsii_type="projen.java.ChecksumPolicy")
|
|
59
|
+
class ChecksumPolicy(enum.Enum):
|
|
60
|
+
'''
|
|
61
|
+
:stability: experimental
|
|
62
|
+
'''
|
|
63
|
+
|
|
64
|
+
IGNORE = "IGNORE"
|
|
65
|
+
'''
|
|
66
|
+
:stability: experimental
|
|
67
|
+
'''
|
|
68
|
+
FAIL = "FAIL"
|
|
69
|
+
'''
|
|
70
|
+
:stability: experimental
|
|
71
|
+
'''
|
|
72
|
+
WARN = "WARN"
|
|
73
|
+
'''
|
|
74
|
+
:stability: experimental
|
|
75
|
+
'''
|
|
76
|
+
|
|
77
|
+
|
|
40
78
|
class JavaProject(
|
|
41
79
|
_GitHubProject_c48bc7ea,
|
|
42
80
|
metaclass=jsii.JSIIMeta,
|
|
@@ -84,6 +122,7 @@ class JavaProject(
|
|
|
84
122
|
version: builtins.str,
|
|
85
123
|
description: typing.Optional[builtins.str] = None,
|
|
86
124
|
packaging: typing.Optional[builtins.str] = None,
|
|
125
|
+
parent_pom: typing.Optional[typing.Union["ParentPom", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
87
126
|
url: typing.Optional[builtins.str] = None,
|
|
88
127
|
name: builtins.str,
|
|
89
128
|
commit_generated: typing.Optional[builtins.bool] = None,
|
|
@@ -132,6 +171,7 @@ class JavaProject(
|
|
|
132
171
|
:param version: (experimental) This is the last piece of the naming puzzle. groupId:artifactId denotes a single project but they cannot delineate which incarnation of that project we are talking about. Do we want the junit:junit of 2018 (version 4.12), or of 2007 (version 3.8.2)? In short: code changes, those changes should be versioned, and this element keeps those versions in line. It is also used within an artifact's repository to separate versions from each other. my-project version 1.0 files live in the directory structure $M2_REPO/org/codehaus/mojo/my-project/1.0. Default: "0.1.0"
|
|
133
172
|
:param description: (experimental) Description of a project is always good. Although this should not replace formal documentation, a quick comment to any readers of the POM is always helpful. Default: undefined
|
|
134
173
|
:param packaging: (experimental) Project packaging format. Default: "jar"
|
|
174
|
+
:param parent_pom: (experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos. Default: undefined
|
|
135
175
|
:param url: (experimental) The URL, like the name, is not required. This is a nice gesture for projects users, however, so that they know where the project lives. Default: undefined
|
|
136
176
|
:param name: (experimental) This is the name of your project. Default: $BASEDIR
|
|
137
177
|
:param commit_generated: (experimental) Whether to commit the managed files by default. Default: true
|
|
@@ -182,6 +222,7 @@ class JavaProject(
|
|
|
182
222
|
version=version,
|
|
183
223
|
description=description,
|
|
184
224
|
packaging=packaging,
|
|
225
|
+
parent_pom=parent_pom,
|
|
185
226
|
url=url,
|
|
186
227
|
name=name,
|
|
187
228
|
commit_generated=commit_generated,
|
|
@@ -683,7 +724,14 @@ class MavenPackagingOptions:
|
|
|
683
724
|
@jsii.data_type(
|
|
684
725
|
jsii_type="projen.java.MavenRepository",
|
|
685
726
|
jsii_struct_bases=[],
|
|
686
|
-
name_mapping={
|
|
727
|
+
name_mapping={
|
|
728
|
+
"id": "id",
|
|
729
|
+
"url": "url",
|
|
730
|
+
"layout": "layout",
|
|
731
|
+
"name": "name",
|
|
732
|
+
"releases": "releases",
|
|
733
|
+
"snapshots": "snapshots",
|
|
734
|
+
},
|
|
687
735
|
)
|
|
688
736
|
class MavenRepository:
|
|
689
737
|
def __init__(
|
|
@@ -693,6 +741,8 @@ class MavenRepository:
|
|
|
693
741
|
url: builtins.str,
|
|
694
742
|
layout: typing.Optional[builtins.str] = None,
|
|
695
743
|
name: typing.Optional[builtins.str] = None,
|
|
744
|
+
releases: typing.Optional[typing.Union["MavenRepositoryPolicy", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
745
|
+
snapshots: typing.Optional[typing.Union["MavenRepositoryPolicy", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
696
746
|
) -> None:
|
|
697
747
|
'''(experimental) Represents a Maven repository.
|
|
698
748
|
|
|
@@ -700,16 +750,24 @@ class MavenRepository:
|
|
|
700
750
|
:param url: (experimental) The url of the repository.
|
|
701
751
|
:param layout: (experimental) The layout of the repository.
|
|
702
752
|
:param name: (experimental) The name of the repository.
|
|
753
|
+
:param releases: (experimental) Repository Policy for Releases.
|
|
754
|
+
:param snapshots: (experimental) Repository Policy for Snapshots.
|
|
703
755
|
|
|
704
756
|
:see: https://maven.apache.org/guides/introduction/introduction-to-repositories.html
|
|
705
757
|
:stability: experimental
|
|
706
758
|
'''
|
|
759
|
+
if isinstance(releases, dict):
|
|
760
|
+
releases = MavenRepositoryPolicy(**releases)
|
|
761
|
+
if isinstance(snapshots, dict):
|
|
762
|
+
snapshots = MavenRepositoryPolicy(**snapshots)
|
|
707
763
|
if __debug__:
|
|
708
764
|
type_hints = typing.get_type_hints(_typecheckingstub__12e8ee88cd330385feef214bd08b3bc44314dc15ddbcd48e4f74c198bda84bde)
|
|
709
765
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
710
766
|
check_type(argname="argument url", value=url, expected_type=type_hints["url"])
|
|
711
767
|
check_type(argname="argument layout", value=layout, expected_type=type_hints["layout"])
|
|
712
768
|
check_type(argname="argument name", value=name, expected_type=type_hints["name"])
|
|
769
|
+
check_type(argname="argument releases", value=releases, expected_type=type_hints["releases"])
|
|
770
|
+
check_type(argname="argument snapshots", value=snapshots, expected_type=type_hints["snapshots"])
|
|
713
771
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
714
772
|
"id": id,
|
|
715
773
|
"url": url,
|
|
@@ -718,6 +776,10 @@ class MavenRepository:
|
|
|
718
776
|
self._values["layout"] = layout
|
|
719
777
|
if name is not None:
|
|
720
778
|
self._values["name"] = name
|
|
779
|
+
if releases is not None:
|
|
780
|
+
self._values["releases"] = releases
|
|
781
|
+
if snapshots is not None:
|
|
782
|
+
self._values["snapshots"] = snapshots
|
|
721
783
|
|
|
722
784
|
@builtins.property
|
|
723
785
|
def id(self) -> builtins.str:
|
|
@@ -757,6 +819,24 @@ class MavenRepository:
|
|
|
757
819
|
result = self._values.get("name")
|
|
758
820
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
759
821
|
|
|
822
|
+
@builtins.property
|
|
823
|
+
def releases(self) -> typing.Optional["MavenRepositoryPolicy"]:
|
|
824
|
+
'''(experimental) Repository Policy for Releases.
|
|
825
|
+
|
|
826
|
+
:stability: experimental
|
|
827
|
+
'''
|
|
828
|
+
result = self._values.get("releases")
|
|
829
|
+
return typing.cast(typing.Optional["MavenRepositoryPolicy"], result)
|
|
830
|
+
|
|
831
|
+
@builtins.property
|
|
832
|
+
def snapshots(self) -> typing.Optional["MavenRepositoryPolicy"]:
|
|
833
|
+
'''(experimental) Repository Policy for Snapshots.
|
|
834
|
+
|
|
835
|
+
:stability: experimental
|
|
836
|
+
'''
|
|
837
|
+
result = self._values.get("snapshots")
|
|
838
|
+
return typing.cast(typing.Optional["MavenRepositoryPolicy"], result)
|
|
839
|
+
|
|
760
840
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
761
841
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
762
842
|
|
|
@@ -769,6 +849,87 @@ class MavenRepository:
|
|
|
769
849
|
)
|
|
770
850
|
|
|
771
851
|
|
|
852
|
+
@jsii.data_type(
|
|
853
|
+
jsii_type="projen.java.MavenRepositoryPolicy",
|
|
854
|
+
jsii_struct_bases=[],
|
|
855
|
+
name_mapping={
|
|
856
|
+
"checksum_policy": "checksumPolicy",
|
|
857
|
+
"enabled": "enabled",
|
|
858
|
+
"update_policy": "updatePolicy",
|
|
859
|
+
},
|
|
860
|
+
)
|
|
861
|
+
class MavenRepositoryPolicy:
|
|
862
|
+
def __init__(
|
|
863
|
+
self,
|
|
864
|
+
*,
|
|
865
|
+
checksum_policy: typing.Optional[ChecksumPolicy] = None,
|
|
866
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
867
|
+
update_policy: typing.Optional["UpdatePolicy"] = None,
|
|
868
|
+
) -> None:
|
|
869
|
+
'''(experimental) Represents a Maven Repository Policy.
|
|
870
|
+
|
|
871
|
+
:param checksum_policy: (experimental) Checksum Policy When Maven deploys files to the repository, it also deploys corresponding checksum files.
|
|
872
|
+
:param enabled:
|
|
873
|
+
:param update_policy: (experimental) Update Policy This element specifies how often updates should attempt to occur. Maven will compare the local POM's timestamp (stored in a repository's maven-metadata file) to the remote. Default: UpdatePolicy.DAILY
|
|
874
|
+
|
|
875
|
+
:see: https://maven.apache.org/settings.html#repositories
|
|
876
|
+
:stability: experimental
|
|
877
|
+
'''
|
|
878
|
+
if __debug__:
|
|
879
|
+
type_hints = typing.get_type_hints(_typecheckingstub__041e104cddeb68a13d0b79cfdce8653000ee58d2c7cef3088a2c8717d7f02ebf)
|
|
880
|
+
check_type(argname="argument checksum_policy", value=checksum_policy, expected_type=type_hints["checksum_policy"])
|
|
881
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
882
|
+
check_type(argname="argument update_policy", value=update_policy, expected_type=type_hints["update_policy"])
|
|
883
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
884
|
+
if checksum_policy is not None:
|
|
885
|
+
self._values["checksum_policy"] = checksum_policy
|
|
886
|
+
if enabled is not None:
|
|
887
|
+
self._values["enabled"] = enabled
|
|
888
|
+
if update_policy is not None:
|
|
889
|
+
self._values["update_policy"] = update_policy
|
|
890
|
+
|
|
891
|
+
@builtins.property
|
|
892
|
+
def checksum_policy(self) -> typing.Optional[ChecksumPolicy]:
|
|
893
|
+
'''(experimental) Checksum Policy When Maven deploys files to the repository, it also deploys corresponding checksum files.
|
|
894
|
+
|
|
895
|
+
:stability: experimental
|
|
896
|
+
'''
|
|
897
|
+
result = self._values.get("checksum_policy")
|
|
898
|
+
return typing.cast(typing.Optional[ChecksumPolicy], result)
|
|
899
|
+
|
|
900
|
+
@builtins.property
|
|
901
|
+
def enabled(self) -> typing.Optional[builtins.bool]:
|
|
902
|
+
'''
|
|
903
|
+
:stability: experimental
|
|
904
|
+
'''
|
|
905
|
+
result = self._values.get("enabled")
|
|
906
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
907
|
+
|
|
908
|
+
@builtins.property
|
|
909
|
+
def update_policy(self) -> typing.Optional["UpdatePolicy"]:
|
|
910
|
+
'''(experimental) Update Policy This element specifies how often updates should attempt to occur.
|
|
911
|
+
|
|
912
|
+
Maven will compare the local POM's timestamp (stored in a repository's maven-metadata file) to the remote.
|
|
913
|
+
|
|
914
|
+
:default: UpdatePolicy.DAILY
|
|
915
|
+
|
|
916
|
+
:stability: experimental
|
|
917
|
+
'''
|
|
918
|
+
result = self._values.get("update_policy")
|
|
919
|
+
return typing.cast(typing.Optional["UpdatePolicy"], result)
|
|
920
|
+
|
|
921
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
922
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
923
|
+
|
|
924
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
925
|
+
return not (rhs == self)
|
|
926
|
+
|
|
927
|
+
def __repr__(self) -> str:
|
|
928
|
+
return "MavenRepositoryPolicy(%s)" % ", ".join(
|
|
929
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
930
|
+
)
|
|
931
|
+
|
|
932
|
+
|
|
772
933
|
class MavenSample(
|
|
773
934
|
_Component_2b0ad27f,
|
|
774
935
|
metaclass=jsii.JSIIMeta,
|
|
@@ -835,10 +996,106 @@ class MavenSampleOptions:
|
|
|
835
996
|
)
|
|
836
997
|
|
|
837
998
|
|
|
999
|
+
@jsii.data_type(
|
|
1000
|
+
jsii_type="projen.java.ParentPom",
|
|
1001
|
+
jsii_struct_bases=[],
|
|
1002
|
+
name_mapping={
|
|
1003
|
+
"artifact_id": "artifactId",
|
|
1004
|
+
"group_id": "groupId",
|
|
1005
|
+
"relative_path": "relativePath",
|
|
1006
|
+
"version": "version",
|
|
1007
|
+
},
|
|
1008
|
+
)
|
|
1009
|
+
class ParentPom:
|
|
1010
|
+
def __init__(
|
|
1011
|
+
self,
|
|
1012
|
+
*,
|
|
1013
|
+
artifact_id: typing.Optional[builtins.str] = None,
|
|
1014
|
+
group_id: typing.Optional[builtins.str] = None,
|
|
1015
|
+
relative_path: typing.Optional[builtins.str] = None,
|
|
1016
|
+
version: typing.Optional[builtins.str] = None,
|
|
1017
|
+
) -> None:
|
|
1018
|
+
'''
|
|
1019
|
+
:param artifact_id: (experimental) Parent Pom Artifact ID.
|
|
1020
|
+
:param group_id: (experimental) Parent Pom Group ID.
|
|
1021
|
+
:param relative_path: (experimental) Parent Pom Relative path from the current pom.
|
|
1022
|
+
:param version: (experimental) Parent Pom Version.
|
|
1023
|
+
|
|
1024
|
+
:stability: experimental
|
|
1025
|
+
'''
|
|
1026
|
+
if __debug__:
|
|
1027
|
+
type_hints = typing.get_type_hints(_typecheckingstub__1f47e5dc92031bfaa3a639437d282aedc130d8a3857314c5a71a2ca063798f40)
|
|
1028
|
+
check_type(argname="argument artifact_id", value=artifact_id, expected_type=type_hints["artifact_id"])
|
|
1029
|
+
check_type(argname="argument group_id", value=group_id, expected_type=type_hints["group_id"])
|
|
1030
|
+
check_type(argname="argument relative_path", value=relative_path, expected_type=type_hints["relative_path"])
|
|
1031
|
+
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
1032
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1033
|
+
if artifact_id is not None:
|
|
1034
|
+
self._values["artifact_id"] = artifact_id
|
|
1035
|
+
if group_id is not None:
|
|
1036
|
+
self._values["group_id"] = group_id
|
|
1037
|
+
if relative_path is not None:
|
|
1038
|
+
self._values["relative_path"] = relative_path
|
|
1039
|
+
if version is not None:
|
|
1040
|
+
self._values["version"] = version
|
|
1041
|
+
|
|
1042
|
+
@builtins.property
|
|
1043
|
+
def artifact_id(self) -> typing.Optional[builtins.str]:
|
|
1044
|
+
'''(experimental) Parent Pom Artifact ID.
|
|
1045
|
+
|
|
1046
|
+
:stability: experimental
|
|
1047
|
+
'''
|
|
1048
|
+
result = self._values.get("artifact_id")
|
|
1049
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1050
|
+
|
|
1051
|
+
@builtins.property
|
|
1052
|
+
def group_id(self) -> typing.Optional[builtins.str]:
|
|
1053
|
+
'''(experimental) Parent Pom Group ID.
|
|
1054
|
+
|
|
1055
|
+
:stability: experimental
|
|
1056
|
+
'''
|
|
1057
|
+
result = self._values.get("group_id")
|
|
1058
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1059
|
+
|
|
1060
|
+
@builtins.property
|
|
1061
|
+
def relative_path(self) -> typing.Optional[builtins.str]:
|
|
1062
|
+
'''(experimental) Parent Pom Relative path from the current pom.
|
|
1063
|
+
|
|
1064
|
+
:stability: experimental
|
|
1065
|
+
'''
|
|
1066
|
+
result = self._values.get("relative_path")
|
|
1067
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1068
|
+
|
|
1069
|
+
@builtins.property
|
|
1070
|
+
def version(self) -> typing.Optional[builtins.str]:
|
|
1071
|
+
'''(experimental) Parent Pom Version.
|
|
1072
|
+
|
|
1073
|
+
:stability: experimental
|
|
1074
|
+
'''
|
|
1075
|
+
result = self._values.get("version")
|
|
1076
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1077
|
+
|
|
1078
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1079
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1080
|
+
|
|
1081
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1082
|
+
return not (rhs == self)
|
|
1083
|
+
|
|
1084
|
+
def __repr__(self) -> str:
|
|
1085
|
+
return "ParentPom(%s)" % ", ".join(
|
|
1086
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1087
|
+
)
|
|
1088
|
+
|
|
1089
|
+
|
|
838
1090
|
@jsii.data_type(
|
|
839
1091
|
jsii_type="projen.java.PluginExecution",
|
|
840
1092
|
jsii_struct_bases=[],
|
|
841
|
-
name_mapping={
|
|
1093
|
+
name_mapping={
|
|
1094
|
+
"goals": "goals",
|
|
1095
|
+
"id": "id",
|
|
1096
|
+
"configuration": "configuration",
|
|
1097
|
+
"phase": "phase",
|
|
1098
|
+
},
|
|
842
1099
|
)
|
|
843
1100
|
class PluginExecution:
|
|
844
1101
|
def __init__(
|
|
@@ -846,12 +1103,14 @@ class PluginExecution:
|
|
|
846
1103
|
*,
|
|
847
1104
|
goals: typing.Sequence[builtins.str],
|
|
848
1105
|
id: builtins.str,
|
|
1106
|
+
configuration: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
849
1107
|
phase: typing.Optional[builtins.str] = None,
|
|
850
1108
|
) -> None:
|
|
851
1109
|
'''(experimental) Plugin execution definition.
|
|
852
1110
|
|
|
853
1111
|
:param goals: (experimental) Which Maven goals this plugin should be associated with.
|
|
854
1112
|
:param id: (experimental) The ID.
|
|
1113
|
+
:param configuration: (experimental) Execution key/value configuration. Default: {}
|
|
855
1114
|
:param phase: (experimental) The phase in which the plugin should execute.
|
|
856
1115
|
|
|
857
1116
|
:stability: experimental
|
|
@@ -860,11 +1119,14 @@ class PluginExecution:
|
|
|
860
1119
|
type_hints = typing.get_type_hints(_typecheckingstub__b8b1bc2eb1ab79c9e54c8b62fd341a87dd82eec6a2b2ec76a5fdb6f1c51d5444)
|
|
861
1120
|
check_type(argname="argument goals", value=goals, expected_type=type_hints["goals"])
|
|
862
1121
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
1122
|
+
check_type(argname="argument configuration", value=configuration, expected_type=type_hints["configuration"])
|
|
863
1123
|
check_type(argname="argument phase", value=phase, expected_type=type_hints["phase"])
|
|
864
1124
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
865
1125
|
"goals": goals,
|
|
866
1126
|
"id": id,
|
|
867
1127
|
}
|
|
1128
|
+
if configuration is not None:
|
|
1129
|
+
self._values["configuration"] = configuration
|
|
868
1130
|
if phase is not None:
|
|
869
1131
|
self._values["phase"] = phase
|
|
870
1132
|
|
|
@@ -888,6 +1150,19 @@ class PluginExecution:
|
|
|
888
1150
|
assert result is not None, "Required property 'id' is missing"
|
|
889
1151
|
return typing.cast(builtins.str, result)
|
|
890
1152
|
|
|
1153
|
+
@builtins.property
|
|
1154
|
+
def configuration(
|
|
1155
|
+
self,
|
|
1156
|
+
) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
|
|
1157
|
+
'''(experimental) Execution key/value configuration.
|
|
1158
|
+
|
|
1159
|
+
:default: {}
|
|
1160
|
+
|
|
1161
|
+
:stability: experimental
|
|
1162
|
+
'''
|
|
1163
|
+
result = self._values.get("configuration")
|
|
1164
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
|
|
1165
|
+
|
|
891
1166
|
@builtins.property
|
|
892
1167
|
def phase(self) -> typing.Optional[builtins.str]:
|
|
893
1168
|
'''(experimental) The phase in which the plugin should execute.
|
|
@@ -1015,6 +1290,7 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1015
1290
|
version: builtins.str,
|
|
1016
1291
|
description: typing.Optional[builtins.str] = None,
|
|
1017
1292
|
packaging: typing.Optional[builtins.str] = None,
|
|
1293
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1018
1294
|
url: typing.Optional[builtins.str] = None,
|
|
1019
1295
|
) -> None:
|
|
1020
1296
|
'''
|
|
@@ -1024,6 +1300,7 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1024
1300
|
:param version: (experimental) This is the last piece of the naming puzzle. groupId:artifactId denotes a single project but they cannot delineate which incarnation of that project we are talking about. Do we want the junit:junit of 2018 (version 4.12), or of 2007 (version 3.8.2)? In short: code changes, those changes should be versioned, and this element keeps those versions in line. It is also used within an artifact's repository to separate versions from each other. my-project version 1.0 files live in the directory structure $M2_REPO/org/codehaus/mojo/my-project/1.0. Default: "0.1.0"
|
|
1025
1301
|
:param description: (experimental) Description of a project is always good. Although this should not replace formal documentation, a quick comment to any readers of the POM is always helpful. Default: undefined
|
|
1026
1302
|
:param packaging: (experimental) Project packaging format. Default: "jar"
|
|
1303
|
+
:param parent_pom: (experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos. Default: undefined
|
|
1027
1304
|
:param url: (experimental) The URL, like the name, is not required. This is a nice gesture for projects users, however, so that they know where the project lives. Default: undefined
|
|
1028
1305
|
|
|
1029
1306
|
:stability: experimental
|
|
@@ -1037,6 +1314,7 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1037
1314
|
version=version,
|
|
1038
1315
|
description=description,
|
|
1039
1316
|
packaging=packaging,
|
|
1317
|
+
parent_pom=parent_pom,
|
|
1040
1318
|
url=url,
|
|
1041
1319
|
)
|
|
1042
1320
|
|
|
@@ -1086,6 +1364,38 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1086
1364
|
|
|
1087
1365
|
return typing.cast(_Dependency_f510e013, jsii.invoke(self, "addPlugin", [spec, options]))
|
|
1088
1366
|
|
|
1367
|
+
@jsii.member(jsii_name="addPluginRepository")
|
|
1368
|
+
def add_plugin_repository(
|
|
1369
|
+
self,
|
|
1370
|
+
*,
|
|
1371
|
+
id: builtins.str,
|
|
1372
|
+
url: builtins.str,
|
|
1373
|
+
layout: typing.Optional[builtins.str] = None,
|
|
1374
|
+
name: typing.Optional[builtins.str] = None,
|
|
1375
|
+
releases: typing.Optional[typing.Union[MavenRepositoryPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1376
|
+
snapshots: typing.Optional[typing.Union[MavenRepositoryPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1377
|
+
) -> None:
|
|
1378
|
+
'''
|
|
1379
|
+
:param id: (experimental) The identifier for the repository.
|
|
1380
|
+
:param url: (experimental) The url of the repository.
|
|
1381
|
+
:param layout: (experimental) The layout of the repository.
|
|
1382
|
+
:param name: (experimental) The name of the repository.
|
|
1383
|
+
:param releases: (experimental) Repository Policy for Releases.
|
|
1384
|
+
:param snapshots: (experimental) Repository Policy for Snapshots.
|
|
1385
|
+
|
|
1386
|
+
:stability: experimental
|
|
1387
|
+
'''
|
|
1388
|
+
repository = MavenRepository(
|
|
1389
|
+
id=id,
|
|
1390
|
+
url=url,
|
|
1391
|
+
layout=layout,
|
|
1392
|
+
name=name,
|
|
1393
|
+
releases=releases,
|
|
1394
|
+
snapshots=snapshots,
|
|
1395
|
+
)
|
|
1396
|
+
|
|
1397
|
+
return typing.cast(None, jsii.invoke(self, "addPluginRepository", [repository]))
|
|
1398
|
+
|
|
1089
1399
|
@jsii.member(jsii_name="addProperty")
|
|
1090
1400
|
def add_property(self, key: builtins.str, value: builtins.str) -> None:
|
|
1091
1401
|
'''(experimental) Adds a key/value property to the pom.
|
|
@@ -1109,6 +1419,8 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1109
1419
|
url: builtins.str,
|
|
1110
1420
|
layout: typing.Optional[builtins.str] = None,
|
|
1111
1421
|
name: typing.Optional[builtins.str] = None,
|
|
1422
|
+
releases: typing.Optional[typing.Union[MavenRepositoryPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1423
|
+
snapshots: typing.Optional[typing.Union[MavenRepositoryPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1112
1424
|
) -> None:
|
|
1113
1425
|
'''(experimental) Adds a repository to the pom.
|
|
1114
1426
|
|
|
@@ -1116,10 +1428,19 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1116
1428
|
:param url: (experimental) The url of the repository.
|
|
1117
1429
|
:param layout: (experimental) The layout of the repository.
|
|
1118
1430
|
:param name: (experimental) The name of the repository.
|
|
1431
|
+
:param releases: (experimental) Repository Policy for Releases.
|
|
1432
|
+
:param snapshots: (experimental) Repository Policy for Snapshots.
|
|
1119
1433
|
|
|
1120
1434
|
:stability: experimental
|
|
1121
1435
|
'''
|
|
1122
|
-
repository = MavenRepository(
|
|
1436
|
+
repository = MavenRepository(
|
|
1437
|
+
id=id,
|
|
1438
|
+
url=url,
|
|
1439
|
+
layout=layout,
|
|
1440
|
+
name=name,
|
|
1441
|
+
releases=releases,
|
|
1442
|
+
snapshots=snapshots,
|
|
1443
|
+
)
|
|
1123
1444
|
|
|
1124
1445
|
return typing.cast(None, jsii.invoke(self, "addRepository", [repository]))
|
|
1125
1446
|
|
|
@@ -1218,6 +1539,7 @@ class Pom(_Component_2b0ad27f, metaclass=jsii.JSIIMeta, jsii_type="projen.java.P
|
|
|
1218
1539
|
"version": "version",
|
|
1219
1540
|
"description": "description",
|
|
1220
1541
|
"packaging": "packaging",
|
|
1542
|
+
"parent_pom": "parentPom",
|
|
1221
1543
|
"url": "url",
|
|
1222
1544
|
},
|
|
1223
1545
|
)
|
|
@@ -1230,6 +1552,7 @@ class PomOptions:
|
|
|
1230
1552
|
version: builtins.str,
|
|
1231
1553
|
description: typing.Optional[builtins.str] = None,
|
|
1232
1554
|
packaging: typing.Optional[builtins.str] = None,
|
|
1555
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1233
1556
|
url: typing.Optional[builtins.str] = None,
|
|
1234
1557
|
) -> None:
|
|
1235
1558
|
'''(experimental) Options for ``Pom``.
|
|
@@ -1239,10 +1562,13 @@ class PomOptions:
|
|
|
1239
1562
|
:param version: (experimental) This is the last piece of the naming puzzle. groupId:artifactId denotes a single project but they cannot delineate which incarnation of that project we are talking about. Do we want the junit:junit of 2018 (version 4.12), or of 2007 (version 3.8.2)? In short: code changes, those changes should be versioned, and this element keeps those versions in line. It is also used within an artifact's repository to separate versions from each other. my-project version 1.0 files live in the directory structure $M2_REPO/org/codehaus/mojo/my-project/1.0. Default: "0.1.0"
|
|
1240
1563
|
:param description: (experimental) Description of a project is always good. Although this should not replace formal documentation, a quick comment to any readers of the POM is always helpful. Default: undefined
|
|
1241
1564
|
:param packaging: (experimental) Project packaging format. Default: "jar"
|
|
1565
|
+
:param parent_pom: (experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos. Default: undefined
|
|
1242
1566
|
:param url: (experimental) The URL, like the name, is not required. This is a nice gesture for projects users, however, so that they know where the project lives. Default: undefined
|
|
1243
1567
|
|
|
1244
1568
|
:stability: experimental
|
|
1245
1569
|
'''
|
|
1570
|
+
if isinstance(parent_pom, dict):
|
|
1571
|
+
parent_pom = ParentPom(**parent_pom)
|
|
1246
1572
|
if __debug__:
|
|
1247
1573
|
type_hints = typing.get_type_hints(_typecheckingstub__468190ed1f2feac4431fa6e9f5cc22eb8dbb01cd1c5d3bdfdac29f07c4370851)
|
|
1248
1574
|
check_type(argname="argument artifact_id", value=artifact_id, expected_type=type_hints["artifact_id"])
|
|
@@ -1250,6 +1576,7 @@ class PomOptions:
|
|
|
1250
1576
|
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
1251
1577
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
1252
1578
|
check_type(argname="argument packaging", value=packaging, expected_type=type_hints["packaging"])
|
|
1579
|
+
check_type(argname="argument parent_pom", value=parent_pom, expected_type=type_hints["parent_pom"])
|
|
1253
1580
|
check_type(argname="argument url", value=url, expected_type=type_hints["url"])
|
|
1254
1581
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1255
1582
|
"artifact_id": artifact_id,
|
|
@@ -1260,6 +1587,8 @@ class PomOptions:
|
|
|
1260
1587
|
self._values["description"] = description
|
|
1261
1588
|
if packaging is not None:
|
|
1262
1589
|
self._values["packaging"] = packaging
|
|
1590
|
+
if parent_pom is not None:
|
|
1591
|
+
self._values["parent_pom"] = parent_pom
|
|
1263
1592
|
if url is not None:
|
|
1264
1593
|
self._values["url"] = url
|
|
1265
1594
|
|
|
@@ -1360,6 +1689,18 @@ class PomOptions:
|
|
|
1360
1689
|
result = self._values.get("packaging")
|
|
1361
1690
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
1362
1691
|
|
|
1692
|
+
@builtins.property
|
|
1693
|
+
def parent_pom(self) -> typing.Optional[ParentPom]:
|
|
1694
|
+
'''(experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos.
|
|
1695
|
+
|
|
1696
|
+
:default: undefined
|
|
1697
|
+
|
|
1698
|
+
:stability: experimental
|
|
1699
|
+
:featured: true
|
|
1700
|
+
'''
|
|
1701
|
+
result = self._values.get("parent_pom")
|
|
1702
|
+
return typing.cast(typing.Optional[ParentPom], result)
|
|
1703
|
+
|
|
1363
1704
|
@builtins.property
|
|
1364
1705
|
def url(self) -> typing.Optional[builtins.str]:
|
|
1365
1706
|
'''(experimental) The URL, like the name, is not required.
|
|
@@ -1539,6 +1880,56 @@ class ProjenrcOptions:
|
|
|
1539
1880
|
)
|
|
1540
1881
|
|
|
1541
1882
|
|
|
1883
|
+
class UpdatePolicy(metaclass=jsii.JSIIMeta, jsii_type="projen.java.UpdatePolicy"):
|
|
1884
|
+
'''
|
|
1885
|
+
:stability: experimental
|
|
1886
|
+
'''
|
|
1887
|
+
|
|
1888
|
+
def __init__(self) -> None:
|
|
1889
|
+
'''
|
|
1890
|
+
:stability: experimental
|
|
1891
|
+
'''
|
|
1892
|
+
jsii.create(self.__class__, self, [])
|
|
1893
|
+
|
|
1894
|
+
@jsii.member(jsii_name="interval")
|
|
1895
|
+
@builtins.classmethod
|
|
1896
|
+
def interval(cls, minutes: jsii.Number) -> builtins.str:
|
|
1897
|
+
'''(experimental) Updates at an interval of X minutes.
|
|
1898
|
+
|
|
1899
|
+
:param minutes: -
|
|
1900
|
+
|
|
1901
|
+
:stability: experimental
|
|
1902
|
+
'''
|
|
1903
|
+
if __debug__:
|
|
1904
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0bf8e37b8aa70ecfb764a100f3a50eabbce221f62cf2cc199c929b8132fe42cc)
|
|
1905
|
+
check_type(argname="argument minutes", value=minutes, expected_type=type_hints["minutes"])
|
|
1906
|
+
return typing.cast(builtins.str, jsii.sinvoke(cls, "interval", [minutes]))
|
|
1907
|
+
|
|
1908
|
+
@jsii.python.classproperty
|
|
1909
|
+
@jsii.member(jsii_name="ALWAYS")
|
|
1910
|
+
def ALWAYS(cls) -> builtins.str:
|
|
1911
|
+
'''
|
|
1912
|
+
:stability: experimental
|
|
1913
|
+
'''
|
|
1914
|
+
return typing.cast(builtins.str, jsii.sget(cls, "ALWAYS"))
|
|
1915
|
+
|
|
1916
|
+
@jsii.python.classproperty
|
|
1917
|
+
@jsii.member(jsii_name="DAILY")
|
|
1918
|
+
def DAILY(cls) -> builtins.str:
|
|
1919
|
+
'''
|
|
1920
|
+
:stability: experimental
|
|
1921
|
+
'''
|
|
1922
|
+
return typing.cast(builtins.str, jsii.sget(cls, "DAILY"))
|
|
1923
|
+
|
|
1924
|
+
@jsii.python.classproperty
|
|
1925
|
+
@jsii.member(jsii_name="NEVER")
|
|
1926
|
+
def NEVER(cls) -> builtins.str:
|
|
1927
|
+
'''
|
|
1928
|
+
:stability: experimental
|
|
1929
|
+
'''
|
|
1930
|
+
return typing.cast(builtins.str, jsii.sget(cls, "NEVER"))
|
|
1931
|
+
|
|
1932
|
+
|
|
1542
1933
|
@jsii.data_type(
|
|
1543
1934
|
jsii_type="projen.java.JavaProjectCommonOptions",
|
|
1544
1935
|
jsii_struct_bases=[_GitHubProjectOptions_547f2d08, PomOptions],
|
|
@@ -1577,6 +1968,7 @@ class ProjenrcOptions:
|
|
|
1577
1968
|
"version": "version",
|
|
1578
1969
|
"description": "description",
|
|
1579
1970
|
"packaging": "packaging",
|
|
1971
|
+
"parent_pom": "parentPom",
|
|
1580
1972
|
"url": "url",
|
|
1581
1973
|
"compile_options": "compileOptions",
|
|
1582
1974
|
"deps": "deps",
|
|
@@ -1627,6 +2019,7 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
1627
2019
|
version: builtins.str,
|
|
1628
2020
|
description: typing.Optional[builtins.str] = None,
|
|
1629
2021
|
packaging: typing.Optional[builtins.str] = None,
|
|
2022
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1630
2023
|
url: typing.Optional[builtins.str] = None,
|
|
1631
2024
|
compile_options: typing.Optional[typing.Union[MavenCompileOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1632
2025
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
@@ -1674,6 +2067,7 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
1674
2067
|
:param version: (experimental) This is the last piece of the naming puzzle. groupId:artifactId denotes a single project but they cannot delineate which incarnation of that project we are talking about. Do we want the junit:junit of 2018 (version 4.12), or of 2007 (version 3.8.2)? In short: code changes, those changes should be versioned, and this element keeps those versions in line. It is also used within an artifact's repository to separate versions from each other. my-project version 1.0 files live in the directory structure $M2_REPO/org/codehaus/mojo/my-project/1.0. Default: "0.1.0"
|
|
1675
2068
|
:param description: (experimental) Description of a project is always good. Although this should not replace formal documentation, a quick comment to any readers of the POM is always helpful. Default: undefined
|
|
1676
2069
|
:param packaging: (experimental) Project packaging format. Default: "jar"
|
|
2070
|
+
:param parent_pom: (experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos. Default: undefined
|
|
1677
2071
|
:param url: (experimental) The URL, like the name, is not required. This is a nice gesture for projects users, however, so that they know where the project lives. Default: undefined
|
|
1678
2072
|
:param compile_options: (experimental) Compile options. Default: - defaults
|
|
1679
2073
|
:param deps: (experimental) List of runtime dependencies for this project. Dependencies use the format: ``<groupId>/<artifactId>@<semver>`` Additional dependencies can be added via ``project.addDependency()``. Default: []
|
|
@@ -1709,6 +2103,8 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
1709
2103
|
readme = _SampleReadmeProps_3518b03b(**readme)
|
|
1710
2104
|
if isinstance(stale_options, dict):
|
|
1711
2105
|
stale_options = _StaleOptions_929db764(**stale_options)
|
|
2106
|
+
if isinstance(parent_pom, dict):
|
|
2107
|
+
parent_pom = ParentPom(**parent_pom)
|
|
1712
2108
|
if isinstance(compile_options, dict):
|
|
1713
2109
|
compile_options = MavenCompileOptions(**compile_options)
|
|
1714
2110
|
if isinstance(junit_options, dict):
|
|
@@ -1753,6 +2149,7 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
1753
2149
|
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
1754
2150
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
1755
2151
|
check_type(argname="argument packaging", value=packaging, expected_type=type_hints["packaging"])
|
|
2152
|
+
check_type(argname="argument parent_pom", value=parent_pom, expected_type=type_hints["parent_pom"])
|
|
1756
2153
|
check_type(argname="argument url", value=url, expected_type=type_hints["url"])
|
|
1757
2154
|
check_type(argname="argument compile_options", value=compile_options, expected_type=type_hints["compile_options"])
|
|
1758
2155
|
check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
|
|
@@ -1829,6 +2226,8 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
1829
2226
|
self._values["description"] = description
|
|
1830
2227
|
if packaging is not None:
|
|
1831
2228
|
self._values["packaging"] = packaging
|
|
2229
|
+
if parent_pom is not None:
|
|
2230
|
+
self._values["parent_pom"] = parent_pom
|
|
1832
2231
|
if url is not None:
|
|
1833
2232
|
self._values["url"] = url
|
|
1834
2233
|
if compile_options is not None:
|
|
@@ -2299,6 +2698,18 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
2299
2698
|
result = self._values.get("packaging")
|
|
2300
2699
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
2301
2700
|
|
|
2701
|
+
@builtins.property
|
|
2702
|
+
def parent_pom(self) -> typing.Optional[ParentPom]:
|
|
2703
|
+
'''(experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos.
|
|
2704
|
+
|
|
2705
|
+
:default: undefined
|
|
2706
|
+
|
|
2707
|
+
:stability: experimental
|
|
2708
|
+
:featured: true
|
|
2709
|
+
'''
|
|
2710
|
+
result = self._values.get("parent_pom")
|
|
2711
|
+
return typing.cast(typing.Optional[ParentPom], result)
|
|
2712
|
+
|
|
2302
2713
|
@builtins.property
|
|
2303
2714
|
def url(self) -> typing.Optional[builtins.str]:
|
|
2304
2715
|
'''(experimental) The URL, like the name, is not required.
|
|
@@ -2476,6 +2887,7 @@ class JavaProjectCommonOptions(_GitHubProjectOptions_547f2d08, PomOptions):
|
|
|
2476
2887
|
"version": "version",
|
|
2477
2888
|
"description": "description",
|
|
2478
2889
|
"packaging": "packaging",
|
|
2890
|
+
"parent_pom": "parentPom",
|
|
2479
2891
|
"url": "url",
|
|
2480
2892
|
"compile_options": "compileOptions",
|
|
2481
2893
|
"deps": "deps",
|
|
@@ -2528,6 +2940,7 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
2528
2940
|
version: builtins.str,
|
|
2529
2941
|
description: typing.Optional[builtins.str] = None,
|
|
2530
2942
|
packaging: typing.Optional[builtins.str] = None,
|
|
2943
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2531
2944
|
url: typing.Optional[builtins.str] = None,
|
|
2532
2945
|
compile_options: typing.Optional[typing.Union[MavenCompileOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2533
2946
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
@@ -2577,6 +2990,7 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
2577
2990
|
:param version: (experimental) This is the last piece of the naming puzzle. groupId:artifactId denotes a single project but they cannot delineate which incarnation of that project we are talking about. Do we want the junit:junit of 2018 (version 4.12), or of 2007 (version 3.8.2)? In short: code changes, those changes should be versioned, and this element keeps those versions in line. It is also used within an artifact's repository to separate versions from each other. my-project version 1.0 files live in the directory structure $M2_REPO/org/codehaus/mojo/my-project/1.0. Default: "0.1.0"
|
|
2578
2991
|
:param description: (experimental) Description of a project is always good. Although this should not replace formal documentation, a quick comment to any readers of the POM is always helpful. Default: undefined
|
|
2579
2992
|
:param packaging: (experimental) Project packaging format. Default: "jar"
|
|
2993
|
+
:param parent_pom: (experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos. Default: undefined
|
|
2580
2994
|
:param url: (experimental) The URL, like the name, is not required. This is a nice gesture for projects users, however, so that they know where the project lives. Default: undefined
|
|
2581
2995
|
:param compile_options: (experimental) Compile options. Default: - defaults
|
|
2582
2996
|
:param deps: (experimental) List of runtime dependencies for this project. Dependencies use the format: ``<groupId>/<artifactId>@<semver>`` Additional dependencies can be added via ``project.addDependency()``. Default: []
|
|
@@ -2614,6 +3028,8 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
2614
3028
|
readme = _SampleReadmeProps_3518b03b(**readme)
|
|
2615
3029
|
if isinstance(stale_options, dict):
|
|
2616
3030
|
stale_options = _StaleOptions_929db764(**stale_options)
|
|
3031
|
+
if isinstance(parent_pom, dict):
|
|
3032
|
+
parent_pom = ParentPom(**parent_pom)
|
|
2617
3033
|
if isinstance(compile_options, dict):
|
|
2618
3034
|
compile_options = MavenCompileOptions(**compile_options)
|
|
2619
3035
|
if isinstance(junit_options, dict):
|
|
@@ -2658,6 +3074,7 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
2658
3074
|
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
2659
3075
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
2660
3076
|
check_type(argname="argument packaging", value=packaging, expected_type=type_hints["packaging"])
|
|
3077
|
+
check_type(argname="argument parent_pom", value=parent_pom, expected_type=type_hints["parent_pom"])
|
|
2661
3078
|
check_type(argname="argument url", value=url, expected_type=type_hints["url"])
|
|
2662
3079
|
check_type(argname="argument compile_options", value=compile_options, expected_type=type_hints["compile_options"])
|
|
2663
3080
|
check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
|
|
@@ -2736,6 +3153,8 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
2736
3153
|
self._values["description"] = description
|
|
2737
3154
|
if packaging is not None:
|
|
2738
3155
|
self._values["packaging"] = packaging
|
|
3156
|
+
if parent_pom is not None:
|
|
3157
|
+
self._values["parent_pom"] = parent_pom
|
|
2739
3158
|
if url is not None:
|
|
2740
3159
|
self._values["url"] = url
|
|
2741
3160
|
if compile_options is not None:
|
|
@@ -3210,6 +3629,18 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
3210
3629
|
result = self._values.get("packaging")
|
|
3211
3630
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
3212
3631
|
|
|
3632
|
+
@builtins.property
|
|
3633
|
+
def parent_pom(self) -> typing.Optional[ParentPom]:
|
|
3634
|
+
'''(experimental) A Parent Pom can be used to have a child project inherit properties/plugins/ect in order to reduce duplication and keep standards across a large amount of repos.
|
|
3635
|
+
|
|
3636
|
+
:default: undefined
|
|
3637
|
+
|
|
3638
|
+
:stability: experimental
|
|
3639
|
+
:featured: true
|
|
3640
|
+
'''
|
|
3641
|
+
result = self._values.get("parent_pom")
|
|
3642
|
+
return typing.cast(typing.Optional[ParentPom], result)
|
|
3643
|
+
|
|
3213
3644
|
@builtins.property
|
|
3214
3645
|
def url(self) -> typing.Optional[builtins.str]:
|
|
3215
3646
|
'''(experimental) The URL, like the name, is not required.
|
|
@@ -3372,6 +3803,7 @@ class JavaProjectOptions(JavaProjectCommonOptions):
|
|
|
3372
3803
|
|
|
3373
3804
|
|
|
3374
3805
|
__all__ = [
|
|
3806
|
+
"ChecksumPolicy",
|
|
3375
3807
|
"JavaProject",
|
|
3376
3808
|
"JavaProjectCommonOptions",
|
|
3377
3809
|
"JavaProjectOptions",
|
|
@@ -3382,14 +3814,17 @@ __all__ = [
|
|
|
3382
3814
|
"MavenPackaging",
|
|
3383
3815
|
"MavenPackagingOptions",
|
|
3384
3816
|
"MavenRepository",
|
|
3817
|
+
"MavenRepositoryPolicy",
|
|
3385
3818
|
"MavenSample",
|
|
3386
3819
|
"MavenSampleOptions",
|
|
3820
|
+
"ParentPom",
|
|
3387
3821
|
"PluginExecution",
|
|
3388
3822
|
"PluginOptions",
|
|
3389
3823
|
"Pom",
|
|
3390
3824
|
"PomOptions",
|
|
3391
3825
|
"Projenrc",
|
|
3392
3826
|
"ProjenrcOptions",
|
|
3827
|
+
"UpdatePolicy",
|
|
3393
3828
|
]
|
|
3394
3829
|
|
|
3395
3830
|
publication.publish()
|
|
@@ -3481,6 +3916,17 @@ def _typecheckingstub__12e8ee88cd330385feef214bd08b3bc44314dc15ddbcd48e4f74c198b
|
|
|
3481
3916
|
url: builtins.str,
|
|
3482
3917
|
layout: typing.Optional[builtins.str] = None,
|
|
3483
3918
|
name: typing.Optional[builtins.str] = None,
|
|
3919
|
+
releases: typing.Optional[typing.Union[MavenRepositoryPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3920
|
+
snapshots: typing.Optional[typing.Union[MavenRepositoryPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3921
|
+
) -> None:
|
|
3922
|
+
"""Type checking stubs"""
|
|
3923
|
+
pass
|
|
3924
|
+
|
|
3925
|
+
def _typecheckingstub__041e104cddeb68a13d0b79cfdce8653000ee58d2c7cef3088a2c8717d7f02ebf(
|
|
3926
|
+
*,
|
|
3927
|
+
checksum_policy: typing.Optional[ChecksumPolicy] = None,
|
|
3928
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
3929
|
+
update_policy: typing.Optional[UpdatePolicy] = None,
|
|
3484
3930
|
) -> None:
|
|
3485
3931
|
"""Type checking stubs"""
|
|
3486
3932
|
pass
|
|
@@ -3500,10 +3946,21 @@ def _typecheckingstub__6be9d5c5edaace101d0e427b56fb2e89f3b2e6ac01bd59e3cb1d0743d
|
|
|
3500
3946
|
"""Type checking stubs"""
|
|
3501
3947
|
pass
|
|
3502
3948
|
|
|
3949
|
+
def _typecheckingstub__1f47e5dc92031bfaa3a639437d282aedc130d8a3857314c5a71a2ca063798f40(
|
|
3950
|
+
*,
|
|
3951
|
+
artifact_id: typing.Optional[builtins.str] = None,
|
|
3952
|
+
group_id: typing.Optional[builtins.str] = None,
|
|
3953
|
+
relative_path: typing.Optional[builtins.str] = None,
|
|
3954
|
+
version: typing.Optional[builtins.str] = None,
|
|
3955
|
+
) -> None:
|
|
3956
|
+
"""Type checking stubs"""
|
|
3957
|
+
pass
|
|
3958
|
+
|
|
3503
3959
|
def _typecheckingstub__b8b1bc2eb1ab79c9e54c8b62fd341a87dd82eec6a2b2ec76a5fdb6f1c51d5444(
|
|
3504
3960
|
*,
|
|
3505
3961
|
goals: typing.Sequence[builtins.str],
|
|
3506
3962
|
id: builtins.str,
|
|
3963
|
+
configuration: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
3507
3964
|
phase: typing.Optional[builtins.str] = None,
|
|
3508
3965
|
) -> None:
|
|
3509
3966
|
"""Type checking stubs"""
|
|
@@ -3526,6 +3983,7 @@ def _typecheckingstub__e3638a11786e70b5de428bf2064d32761537778501eb3cb189b4457c7
|
|
|
3526
3983
|
version: builtins.str,
|
|
3527
3984
|
description: typing.Optional[builtins.str] = None,
|
|
3528
3985
|
packaging: typing.Optional[builtins.str] = None,
|
|
3986
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3529
3987
|
url: typing.Optional[builtins.str] = None,
|
|
3530
3988
|
) -> None:
|
|
3531
3989
|
"""Type checking stubs"""
|
|
@@ -3567,6 +4025,7 @@ def _typecheckingstub__468190ed1f2feac4431fa6e9f5cc22eb8dbb01cd1c5d3bdfdac29f07c
|
|
|
3567
4025
|
version: builtins.str,
|
|
3568
4026
|
description: typing.Optional[builtins.str] = None,
|
|
3569
4027
|
packaging: typing.Optional[builtins.str] = None,
|
|
4028
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3570
4029
|
url: typing.Optional[builtins.str] = None,
|
|
3571
4030
|
) -> None:
|
|
3572
4031
|
"""Type checking stubs"""
|
|
@@ -3592,6 +4051,12 @@ def _typecheckingstub__6ae2ae91be40e1fe4218504ad4a0a84a64d14b1c1274575f956490848
|
|
|
3592
4051
|
"""Type checking stubs"""
|
|
3593
4052
|
pass
|
|
3594
4053
|
|
|
4054
|
+
def _typecheckingstub__0bf8e37b8aa70ecfb764a100f3a50eabbce221f62cf2cc199c929b8132fe42cc(
|
|
4055
|
+
minutes: jsii.Number,
|
|
4056
|
+
) -> None:
|
|
4057
|
+
"""Type checking stubs"""
|
|
4058
|
+
pass
|
|
4059
|
+
|
|
3595
4060
|
def _typecheckingstub__95d1347bcc9244ea45fe2d94ee57536743a6579b8c3cbeefd1a9832f2acb54b0(
|
|
3596
4061
|
*,
|
|
3597
4062
|
name: builtins.str,
|
|
@@ -3628,6 +4093,7 @@ def _typecheckingstub__95d1347bcc9244ea45fe2d94ee57536743a6579b8c3cbeefd1a9832f2
|
|
|
3628
4093
|
version: builtins.str,
|
|
3629
4094
|
description: typing.Optional[builtins.str] = None,
|
|
3630
4095
|
packaging: typing.Optional[builtins.str] = None,
|
|
4096
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3631
4097
|
url: typing.Optional[builtins.str] = None,
|
|
3632
4098
|
compile_options: typing.Optional[typing.Union[MavenCompileOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3633
4099
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
@@ -3678,6 +4144,7 @@ def _typecheckingstub__9bd204911b78eb490a0ff7d3863868024abfc54a7f5ababba6fe97db2
|
|
|
3678
4144
|
version: builtins.str,
|
|
3679
4145
|
description: typing.Optional[builtins.str] = None,
|
|
3680
4146
|
packaging: typing.Optional[builtins.str] = None,
|
|
4147
|
+
parent_pom: typing.Optional[typing.Union[ParentPom, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3681
4148
|
url: typing.Optional[builtins.str] = None,
|
|
3682
4149
|
compile_options: typing.Optional[typing.Union[MavenCompileOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
3683
4150
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|