Skip to content

Commit 58f4034

Browse files
authored
feat: make java scope changes default (#357)
1 parent 70797c0 commit 58f4034

File tree

10 files changed

+10
-59
lines changed

10 files changed

+10
-59
lines changed

aws_lambda_builders/workflows/java/utils.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,6 @@
99
from aws_lambda_builders.utils import which, copytree
1010

1111

12-
EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG = "experimentalMavenScopeAndLayer"
13-
14-
1512
class OSUtils(object):
1613
"""
1714
Convenience wrapper around common system functions
@@ -63,10 +60,3 @@ def jar_file_filter(file_name):
6360
Name of the file that will be checked against if it ends with .jar or not
6461
"""
6562
return bool(file_name) and isinstance(file_name, str) and file_name.endswith(".jar")
66-
67-
68-
def is_experimental_maven_scope_and_layers_active(experimental_flags):
69-
"""
70-
A function which will determine if experimental maven scope and layer changes are active
71-
"""
72-
return bool(experimental_flags) and EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG in experimental_flags

aws_lambda_builders/workflows/java_gradle/workflow.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from aws_lambda_builders.actions import CleanUpAction
77
from aws_lambda_builders.workflow import BaseWorkflow, Capability
88
from aws_lambda_builders.workflows.java.actions import JavaCopyDependenciesAction, JavaMoveDependenciesAction
9-
from aws_lambda_builders.workflows.java.utils import OSUtils, is_experimental_maven_scope_and_layers_active
9+
from aws_lambda_builders.workflows.java.utils import OSUtils
1010

1111
from .actions import JavaGradleBuildAction, JavaGradleCopyArtifactsAction, JavaGradleCopyLayerArtifactsAction
1212
from .gradle import SubprocessGradle
@@ -36,7 +36,7 @@ def __init__(self, source_dir, artifacts_dir, scratch_dir, manifest_path, **kwar
3636
copy_artifacts_action = JavaGradleCopyArtifactsAction(
3737
source_dir, artifacts_dir, self.build_output_dir, self.os_utils
3838
)
39-
if self.is_building_layer and is_experimental_maven_scope_and_layers_active(self.experimental_flags):
39+
if self.is_building_layer:
4040
copy_artifacts_action = JavaGradleCopyLayerArtifactsAction(
4141
source_dir, artifacts_dir, self.build_output_dir, self.os_utils
4242
)

aws_lambda_builders/workflows/java_maven/maven.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,13 @@ def __init__(self, **kwargs):
1616

1717

1818
class SubprocessMaven(object):
19-
def __init__(self, maven_binary, os_utils=None, is_experimental_maven_scope_enabled=False):
19+
def __init__(self, maven_binary, os_utils=None):
2020
if maven_binary is None:
2121
raise ValueError("Must provide Maven BinaryPath")
2222
self.maven_binary = maven_binary
2323
if os_utils is None:
2424
raise ValueError("Must provide OSUtils")
2525
self.os_utils = os_utils
26-
self.is_experimental_maven_scope_enabled = is_experimental_maven_scope_enabled
2726

2827
def build(self, scratch_dir):
2928
args = ["clean", "install"]
@@ -35,7 +34,7 @@ def build(self, scratch_dir):
3534
raise MavenExecutionError(message=stdout.decode("utf8").strip())
3635

3736
def copy_dependency(self, scratch_dir):
38-
include_scope = "runtime" if self.is_experimental_maven_scope_enabled else "compile"
37+
include_scope = "runtime"
3938
LOG.debug("Running copy_dependency with scope: %s", include_scope)
4039
args = ["dependency:copy-dependencies", f"-DincludeScope={include_scope}", "-Dmdep.prependGroupId=true"]
4140
ret_code, stdout, _ = self._run(args, scratch_dir)

aws_lambda_builders/workflows/java_maven/workflow.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from aws_lambda_builders.workflow import BaseWorkflow, Capability
55
from aws_lambda_builders.actions import CopySourceAction, CleanUpAction
66
from aws_lambda_builders.workflows.java.actions import JavaCopyDependenciesAction, JavaMoveDependenciesAction
7-
from aws_lambda_builders.workflows.java.utils import OSUtils, is_experimental_maven_scope_and_layers_active
7+
from aws_lambda_builders.workflows.java.utils import OSUtils
88

99
from .actions import (
1010
JavaMavenBuildAction,
@@ -34,17 +34,13 @@ def __init__(self, source_dir, artifacts_dir, scratch_dir, manifest_path, **kwar
3434
self.os_utils = OSUtils()
3535
# Assuming root_dir is the same as source_dir for now
3636
root_dir = source_dir
37-
is_experimental_maven_scope_and_layers_enabled = is_experimental_maven_scope_and_layers_active(
38-
self.experimental_flags
39-
)
4037
subprocess_maven = SubprocessMaven(
4138
maven_binary=self.binaries["mvn"],
4239
os_utils=self.os_utils,
43-
is_experimental_maven_scope_enabled=is_experimental_maven_scope_and_layers_enabled,
4440
)
4541

4642
copy_artifacts_action = JavaMavenCopyArtifactsAction(scratch_dir, artifacts_dir, self.os_utils)
47-
if self.is_building_layer and is_experimental_maven_scope_and_layers_enabled:
43+
if self.is_building_layer:
4844
copy_artifacts_action = JavaMavenCopyLayerArtifactsAction(scratch_dir, artifacts_dir, self.os_utils)
4945

5046
self.actions = [

tests/integration/workflows/java_gradle/test_java_gradle.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
from aws_lambda_builders.builder import LambdaBuilder
1111
from aws_lambda_builders.exceptions import WorkflowFailedError
12-
from aws_lambda_builders.workflows.java.utils import EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG
1312
from tests.integration.workflows.common_test_utils import (
1413
does_folder_contain_all_files,
1514
does_folder_contain_file,
@@ -204,7 +203,6 @@ def validate_layer_build(self):
204203
layer_manifest_path,
205204
runtime=self.runtime,
206205
is_building_layer=True,
207-
experimental_flags=[EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG],
208206
)
209207
artifact_expected_files = [
210208
join("lib", "aws-lambda-java-core-1.2.0.jar"),
@@ -223,7 +221,6 @@ def validate_function_build(self):
223221
function_manifest_path,
224222
runtime=self.runtime,
225223
is_building_layer=False,
226-
experimental_flags=[EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG],
227224
)
228225
artifact_expected_files = [
229226
join("aws", "lambdabuilders", "Main.class"),

tests/integration/workflows/java_maven/test_java_maven.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
from aws_lambda_builders.builder import LambdaBuilder
1010
from aws_lambda_builders.exceptions import WorkflowFailedError
11-
from aws_lambda_builders.workflows.java.utils import EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG
1211
from tests.integration.workflows.common_test_utils import (
1312
does_folder_contain_all_files,
1413
does_folder_contain_file,
@@ -134,7 +133,6 @@ def validate_layer_build(self):
134133
layer_manifest_path,
135134
runtime=self.runtime,
136135
is_building_layer=True,
137-
experimental_flags=[EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG],
138136
)
139137
artifact_expected_files = [
140138
join("lib", "com.amazonaws.aws-lambda-java-core-1.2.0.jar"),
@@ -154,7 +152,6 @@ def validate_function_build(self):
154152
function_manifest_path,
155153
runtime=self.runtime,
156154
is_building_layer=False,
157-
experimental_flags=[EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG],
158155
)
159156
artifact_expected_files = [
160157
join("aws", "lambdabuilders", "Main.class"),

tests/unit/workflows/java/test_utils.py

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44

55
from aws_lambda_builders.workflows.java.utils import (
66
jar_file_filter,
7-
EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG,
8-
is_experimental_maven_scope_and_layers_active,
97
)
108

119

@@ -20,14 +18,3 @@ class TestJavaUtils(TestCase):
2018
)
2119
def test_jar_file_filter(self, file_name, expected):
2220
self.assertEqual(jar_file_filter(file_name), expected)
23-
24-
@parameterized.expand(
25-
[
26-
(None, False),
27-
([], False),
28-
([EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG], True),
29-
([EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG, "SomeOtherFlag"], True),
30-
]
31-
)
32-
def test_experimental_maven_scope_and_layers_check(self, experimental_flags, expected):
33-
self.assertEqual(is_experimental_maven_scope_and_layers_active(experimental_flags), expected)

tests/unit/workflows/java_gradle/test_workflow.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
from aws_lambda_builders.actions import CleanUpAction
77
from aws_lambda_builders.workflows.java.actions import JavaMoveDependenciesAction, JavaCopyDependenciesAction
8-
from aws_lambda_builders.workflows.java.utils import EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG
98
from aws_lambda_builders.workflows.java_gradle.workflow import JavaGradleWorkflow
109
from aws_lambda_builders.workflows.java_gradle.actions import (
1110
JavaGradleBuildAction,
@@ -98,14 +97,13 @@ def test_must_validate_architecture(self):
9897
self.assertEqual(workflow.architecture, "x86_64")
9998
self.assertEqual(workflow_with_arm.architecture, "arm64")
10099

101-
def test_workflow_sets_up_gradle_actions_for_layers_experimental(self):
100+
def test_workflow_sets_up_gradle_actions_for_layers(self):
102101
workflow = JavaGradleWorkflow(
103102
"source",
104103
"artifacts",
105104
"scratch_dir",
106105
"manifest",
107106
is_building_layer=True,
108-
experimental_flags=[EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG],
109107
)
110108

111109
self.assertEqual(len(workflow.actions), 2)

tests/unit/workflows/java_maven/test_maven.py

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def test_copy_dependency(self):
6161
maven = SubprocessMaven(maven_binary=self.maven_binary, os_utils=self.os_utils)
6262
maven.copy_dependency(self.source_dir)
6363
self.os_utils.popen.assert_called_with(
64-
[self.maven_path, "dependency:copy-dependencies", "-DincludeScope=compile", "-Dmdep.prependGroupId=true"],
64+
[self.maven_path, "dependency:copy-dependencies", "-DincludeScope=runtime", "-Dmdep.prependGroupId=true"],
6565
cwd=self.source_dir,
6666
stderr=subprocess.PIPE,
6767
stdout=subprocess.PIPE,
@@ -74,15 +74,3 @@ def test_copy_dependency_raises_exception_if_retcode_not_0(self):
7474
with self.assertRaises(MavenExecutionError) as err:
7575
maven.copy_dependency(self.source_dir)
7676
self.assertEqual(err.exception.args[0], "Maven Failed: Some Error Message")
77-
78-
def test_experimental_scope(self):
79-
maven = SubprocessMaven(
80-
maven_binary=self.maven_binary, os_utils=self.os_utils, is_experimental_maven_scope_enabled=True
81-
)
82-
maven.copy_dependency(self.source_dir)
83-
self.os_utils.popen.assert_called_with(
84-
[self.maven_path, "dependency:copy-dependencies", "-DincludeScope=runtime", "-Dmdep.prependGroupId=true"],
85-
cwd=self.source_dir,
86-
stderr=subprocess.PIPE,
87-
stdout=subprocess.PIPE,
88-
)

tests/unit/workflows/java_maven/test_workflow.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
from mock import patch, ANY
33

44
from aws_lambda_builders.workflows.java.actions import JavaCopyDependenciesAction, JavaMoveDependenciesAction
5-
from aws_lambda_builders.workflows.java.utils import EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG
65
from aws_lambda_builders.workflows.java_maven.workflow import JavaMavenWorkflow
76
from aws_lambda_builders.workflows.java_maven.actions import (
87
JavaMavenBuildAction,
@@ -114,11 +113,11 @@ def test_workflow_sets_up_maven_actions_with_combine_dependencies(self, patched_
114113
"scratch_dir",
115114
"manifest",
116115
is_building_layer=True,
117-
experimental_flags=[EXPERIMENTAL_MAVEN_SCOPE_AND_LAYER_FLAG],
118116
)
119117

120118
patched_maven_process.assert_called_with(
121-
maven_binary=ANY, os_utils=ANY, is_experimental_maven_scope_enabled=True
119+
maven_binary=ANY,
120+
os_utils=ANY,
122121
)
123122

124123
self.assertEqual(len(workflow.actions), 4)

0 commit comments

Comments
 (0)