Skip to content

Commit 50b87d1

Browse files
ipa-rwuipa-nhg
authored andcommitted
fix naming for path, image, folder
1 parent d31e5ca commit 50b87d1

5 files changed

Lines changed: 68 additions & 69 deletions

File tree

plugins/de.fraunhofer.ipa.rossystem.deployment/src/de/fraunhofer/ipa/rossystem/deployment/DeploymentArtifactsGenerator.xtend

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import de.fraunhofer.ipa.rossystem.deployment.RosInstallCompiler
1111
import de.fraunhofer.ipa.rossystem.deployment.DockerComposeCompiler
1212
import de.fraunhofer.ipa.rossystem.deployment.DockerContainerCompiler
1313
import de.fraunhofer.ipa.rossystem.deployment.GitActionCompiler
14+
import de.fraunhofer.ipa.rossystem.deployment.DeploymentHelpers
1415
import rossystem.RosSystem;
1516
import java.util.HashMap
1617
import java.util.Map
@@ -44,12 +45,12 @@ class DeploymentArtifactsGenerator extends AbstractGenerator {
4445
RosInstallCompiler rosintall_compiler = new RosInstallCompiler()
4546
DockerComposeCompiler dockercompose_compiler = new DockerComposeCompiler()
4647
GitActionCompiler gitaction_compiler = new GitActionCompiler()
47-
48+
49+
DeploymentHelpers generator_helper = new DeploymentHelpers()
4850

4951
String ros_distro
52+
String system_folder_prefix
5053
Integer ros_version
51-
String system_prefix
52-
String stack_prefix
5354
Map<String, List<String>> device_map = new HashMap<String, List<String>>
5455

5556
def get_ros_distro(String distro) {
@@ -85,26 +86,26 @@ class DeploymentArtifactsGenerator extends AbstractGenerator {
8586
}
8687
]
8788
for (system : resource.allContents.toIterable.filter(RosSystem)){
88-
system_prefix = create_system_prefix(system)
89+
system_folder_prefix = create_system_prefix(system)
8990
if (system.componentStack.size==0){
90-
fsa.generateFile(system_prefix +"/Dockerfile",docker_compiler.compile_toDockerContainer(system, null, ros_distro, ros_version))
91-
fsa.generateFile(system_prefix +"/extra_layer/" + system.getName().toLowerCase + ".rosinstall",rosintall_compiler.compile_toRosInstall(system,null))
92-
fsa.generateFile(system_prefix +"/extra_layer/Dockerfile",docker_compiler.compile_toDockerImageExtraLayer(system, null,ros_distro, ros_version))
91+
fsa.generateFile(system_folder_prefix +"/Dockerfile",docker_compiler.compile_toDockerContainer(system, null, ros_distro, ros_version))
92+
fsa.generateFile(system_folder_prefix +"/extra_layer/" + system.getName().toLowerCase + ".rosinstall",rosintall_compiler.compile_toRosInstall(system,null))
93+
fsa.generateFile(system_folder_prefix +"/extra_layer/Dockerfile",docker_compiler.compile_toDockerImageExtraLayer(system, null,ros_distro, ros_version))
9394
} else {
9495
for (stack : system.componentStack){
95-
stack_prefix = String.join("/", system_prefix, system.name.toLowerCase+'_'+stack.name.toLowerCase)
96-
fsa.generateFile(String.join("/", stack_prefix, "Dockerfile"),docker_compiler.compile_toDockerContainer(system, stack, ros_distro, ros_version))
97-
fsa.generateFile(String.join("/", stack_prefix, "extra_layer", stack.name.toLowerCase+".rosinstall"),rosintall_compiler.compile_toRosInstall(system,stack))
98-
fsa.generateFile(String.join("/", stack_prefix, "extra_layer", "Dockerfile"),docker_compiler.compile_toDockerImageExtraLayer(system,stack, ros_distro, ros_version))
96+
val stack_folder_prefix = String.join("/", system_folder_prefix, system.name.toLowerCase+'_'+stack.name.toLowerCase)
97+
fsa.generateFile(String.join("/", stack_folder_prefix, "Dockerfile"),docker_compiler.compile_toDockerContainer(system, stack, ros_distro, ros_version))
98+
fsa.generateFile(String.join("/", stack_folder_prefix, "extra_layer", stack.name.toLowerCase+".rosinstall"),rosintall_compiler.compile_toRosInstall(system,stack))
99+
fsa.generateFile(String.join("/", stack_folder_prefix, "extra_layer", "Dockerfile"),docker_compiler.compile_toDockerImageExtraLayer(system,stack, ros_distro, ros_version))
99100
}
100101
}
101102

102-
fsa.generateFile(String.join("/", system_prefix, "docker-compose.yml"),dockercompose_compiler.compile_toDockerCompose(system, ros_distro, ros_version, device_map))
103+
fsa.generateFile(String.join("/", system_folder_prefix, "docker-compose.yml"),dockercompose_compiler.compile_toDockerCompose(system, ros_distro, ros_version, device_map))
103104
}
104105

105106
// git action workflow
106107
for (system : resource.allContents.toIterable.filter(RosSystem)){
107-
fsa.generateFile(String.join("/", system_prefix, system_prefix + "_workflow.yml") ,gitaction_compiler.compile_toGitAction(system, ros_version, ros_distro))
108+
fsa.generateFile(String.join("/", system_folder_prefix, generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro) + "_workflow.yml") ,gitaction_compiler.compile_toGitAction(system, ros_version, ros_distro))
108109
}
109110
}
110111

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package de.fraunhofer.ipa.rossystem.deployment
2+
import de.fraunhofer.ipa.rossystem.generator.GeneratorHelpers
3+
4+
5+
class DeploymentHelpers extends GeneratorHelpers {
6+
7+
def get_uniqe_name(String prefix, String ros_distro) {
8+
return prefix + "_" + ros_distro
9+
}
10+
11+
def get_folder_name(String prefix, String ros_distro) {
12+
if(ros_distro=="foxy") {
13+
return prefix + "_ros2"
14+
}
15+
else{
16+
return prefix
17+
}
18+
}
19+
}

plugins/de.fraunhofer.ipa.rossystem.deployment/src/de/fraunhofer/ipa/rossystem/deployment/DockerComposeCompiler.xtend

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,13 @@
11
package de.fraunhofer.ipa.rossystem.deployment
22

33
import rossystem.RosSystem
4-
import de.fraunhofer.ipa.rossystem.generator.GeneratorHelpers
4+
import de.fraunhofer.ipa.rossystem.deployment.DeploymentHelpers
55
import java.util.Map
66
import java.util.List
77

88
class DockerComposeCompiler {
99

10-
GeneratorHelpers generator_helper = new GeneratorHelpers()
11-
12-
def get_name(String prefix, String ros_distro) {
13-
if(ros_distro=="foxy") {
14-
return prefix + "_ros2"
15-
}
16-
else{
17-
return prefix + ros_distro
18-
}
19-
}
10+
DeploymentHelpers generator_helper = new DeploymentHelpers()
2011

2112
def create_devices(List<String> ports)'''
2213
«IF ports.size() > 0»
@@ -40,8 +31,8 @@ services:
4031
- ros
4132

4233
«IF system.getComponentStack().isEmpty()»
43-
«" "»«system.name.toLowerCase»:
44-
image: "«system.name.toLowerCase»:latest"
34+
«" "»«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»:
35+
image: "«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»:latest"
4536
depends_on:
4637
- ros-master
4738
environment:
@@ -53,8 +44,8 @@ services:
5344
command: stdbuf -o L roslaunch «system.name.toLowerCase» «system.name.toLowerCase».launch --wait
5445
«ELSE»
5546
«FOR stack:system.componentStack»
56-
«" "»«system.name.toLowerCase»_«stack.name.toLowerCase»:
57-
image: "«system.name.toLowerCase»_«stack.name.toLowerCase»:latest"
47+
«" "»«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»_«stack.name.toLowerCase»:
48+
image: "«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»_«stack.name.toLowerCase»:latest"
5849
depends_on:
5950
- ros-master
6051
environment:
@@ -71,14 +62,14 @@ services:
7162
version: "3.3"
7263
services:
7364
«IF system.getComponentStack().isEmpty()»
74-
«" "»«system.name.toLowerCase»:
75-
image: "«get_name(system.name.toLowerCase, ros_distro)»:latest"
65+
«" "»«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»:
66+
image: "«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»:latest"
7667
«create_devices(device_map.get(system.name))»
7768
command: stdbuf -o L ros2 launch «system.name.toLowerCase» «system.name.toLowerCase».launch.py
7869
«ELSE»
7970
«FOR stack:system.componentStack»
80-
«" "»«system.name.toLowerCase»_«stack.name.toLowerCase»:
81-
image: "«get_name(system.name.toLowerCase, ros_distro)»_«stack.name.toLowerCase»:latest"
71+
«" "»«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»_«stack.name.toLowerCase»:
72+
image: "«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»_«stack.name.toLowerCase»:latest"
8273
«create_devices(device_map.get(stack.name))»
8374
command: stdbuf -o L ros2 launch «system.name.toLowerCase»_«stack.name.toLowerCase» «stack.name.toLowerCase».launch.py
8475

plugins/de.fraunhofer.ipa.rossystem.deployment/src/de/fraunhofer/ipa/rossystem/deployment/DockerContainerCompiler.xtend

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,11 @@ package de.fraunhofer.ipa.rossystem.deployment
22

33
import rossystem.RosSystem
44
import rossystem.ComponentStack
5-
import de.fraunhofer.ipa.rossystem.generator.GeneratorHelpers
5+
import de.fraunhofer.ipa.rossystem.deployment.DeploymentHelpers
66

77
class DockerContainerCompiler {
8-
GeneratorHelpers generator_helper = new GeneratorHelpers()
9-
10-
def get_name(String prefix, String ros_distro) {
11-
if(ros_distro=="foxy") {
12-
return prefix + "_ros2"
13-
}
14-
else{
15-
return prefix + ros_distro
16-
}
17-
}
8+
DeploymentHelpers generator_helper = new DeploymentHelpers()
9+
1810
def dockerfile_header(Integer ros_version) '''
1911
# syntax=docker/dockerfile:experimental
2012
ARG SUFFIX=
@@ -27,13 +19,13 @@ ARG PREFIX=
2719
«IF generator_helper.listOfRepos(system).isEmpty()»
2820
FROM ros:«ros_distro»-ros-core as base
2921
«ELSE»
30-
FROM ${PREFIX}extra_layer_«get_name(system.name.toLowerCase, ros_distro)»${SUFFIX} as base
22+
FROM ${PREFIX}extra_layer_«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»${SUFFIX} as base
3123
«ENDIF»
3224
«ELSE»
3325
«IF generator_helper.listOfRepos(stack).isEmpty()»
3426
FROM ros:«ros_distro»-ros-core as base
3527
«ELSE»
36-
FROM ${PREFIX}extra_layer_«get_name(stack.name.toLowerCase, ros_distro)»${SUFFIX} as base
28+
FROM ${PREFIX}extra_layer_«generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»_«stack.name.toLowerCase»${SUFFIX} as base
3729
«ENDIF»
3830
«ENDIF»
3931
FROM ${PREFIX}builder${BUILDER_SUFFIX} as builder

plugins/de.fraunhofer.ipa.rossystem.deployment/src/de/fraunhofer/ipa/rossystem/deployment/GitActionCompiler.xtend

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,11 @@
11
package de.fraunhofer.ipa.rossystem.deployment
22

33
import rossystem.RosSystem
4-
import de.fraunhofer.ipa.rossystem.generator.GeneratorHelpers
4+
import de.fraunhofer.ipa.rossystem.deployment.DeploymentHelpers
55

66
class GitActionCompiler {
77

8-
GeneratorHelpers generator_helper = new GeneratorHelpers()
9-
10-
def get_name(String prefix, String ros_distro) {
11-
if(ros_distro=="foxy") {
12-
return prefix + "_ros2"
13-
}
14-
else{
15-
return prefix + ros_distro
16-
}
17-
}
8+
DeploymentHelpers generator_helper = new DeploymentHelpers()
189

1910
def default_part(String layer, String context_path, String needed_layer, String tag)'''
2011
«layer»:
@@ -83,29 +74,34 @@ class GitActionCompiler {
8374
def build_layer()'''
8475
«default_part("builder", "./builder", null, "type=raw,value=${{ env.BUILDER_SUFFIX }}"
8576
'''
86-
def extra_layer(String name, String path)'''
87-
«default_part("extra_layer_"+name, String.join("/", ".",path,"extra_layer"), null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
77+
def extra_layer(String sys_name, String ros_distro)
78+
'''
79+
«default_part("extra_layer_"+ generator_helper.get_uniqe_name(sys_name, ros_distro), String.join("/", ".",generator_helper.get_folder_name(sys_name, ros_distro),"extra_layer"), null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
80+
'''
81+
def extra_layer(String sys_name, String stack_name,String ros_distro)
82+
'''
83+
«default_part(String.join("_", "extra_layer", generator_helper.get_uniqe_name(sys_name, ros_distro), stack_name), String.join("/", ".",generator_helper.get_folder_name(sys_name, ros_distro), String.join("_", sys_name, stack_name),"extra_layer"), null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
8884
'''
89-
def system_layer(String sys_name, Boolean need_extra)'''
85+
def system_layer(String sys_name, Boolean need_extra, String ros_distro)'''
9086
«IF need_extra»
91-
«default_part(sys_name, "./"+sys_name, "extra_layer_"+sys_name, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
87+
«default_part(generator_helper.get_uniqe_name(sys_name, ros_distro), "./"+ generator_helper.get_folder_name(sys_name, ros_distro), "extra_layer_"+ generator_helper.get_uniqe_name(sys_name, ros_distro), "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
9288
«ELSE»
93-
«default_part(sys_name, "./"+sys_name, null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
89+
«default_part(generator_helper.get_uniqe_name(sys_name, ros_distro), "./"+ generator_helper.get_folder_name(sys_name, ros_distro), null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
9490
«ENDIF»
9591
'''
9692
def stack_layer(String sys_name, String stack_name, String ros_distro, Boolean need_extra)'''
9793
«IF need_extra»
98-
«default_part(get_name(sys_name, ros_distro)+"_"+stack_name, String.join("/", ".",get_name(sys_name, ros_distro), sys_name+"_"+stack_name), "extra_layer_"+get_name(stack_name, ros_distro), "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
94+
«default_part(generator_helper.get_uniqe_name(sys_name, ros_distro)+"_"+stack_name, String.join("/", ".",generator_helper.get_folder_name(sys_name, ros_distro), sys_name+"_"+stack_name), String.join("_", "extra_layer", generator_helper.get_uniqe_name(sys_name, ros_distro), stack_name), "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
9995
«ELSE»
100-
«default_part(get_name(sys_name, ros_distro)+"_"+stack_name, String.join("/", ".",get_name(sys_name, ros_distro), sys_name+"_"+stack_name), null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
96+
«default_part(generator_helper.get_uniqe_name(sys_name, ros_distro)+"_"+stack_name, String.join("/", ".",generator_helper.get_folder_name(sys_name, ros_distro), sys_name+"_"+stack_name), null, "type=raw,value=${{ steps.extract_branch.outputs.branch }}"
10197
«ENDIF»
10298
'''
10399
def compile_toGitAction(RosSystem system, Integer ros_version, String ros_distro) '''«generator_helper.init_pkg()»
104-
name: «get_name(system.name.toLowerCase, ros_distro)»
100+
name: «generator_helper.get_uniqe_name(system.name.toLowerCase, ros_distro)»
105101
on:
106102
push:
107103
paths:
108-
- '«get_name(system.name.toLowerCase, ros_distro)»/**'
104+
- '«generator_helper.get_folder_name(system.name.toLowerCase, ros_distro)»/**'
109105
env:
110106
PREFIX: "${{ secrets.DOCKER_USERNAME }}/"
111107
SUFFIX: ""
@@ -114,13 +110,13 @@ env:
114110
jobs:
115111
«IF system.getComponentStack().isEmpty()»
116112
«IF !generator_helper.listOfRepos(system).isEmpty()»
117-
«extra_layer(get_name(system.name.toLowerCase, ros_distro), get_name(system.name.toLowerCase, ros_distro)
118-
«system_layer(get_name(system.name.toLowerCase, ros_distro), true
113+
«extra_layer(system.name.toLowerCase, ros_distro)»
114+
«system_layer(system.name.toLowerCase, true, ros_distro
119115
«ELSE»
120-
«system_layer(get_name(system.name.toLowerCase, ros_distro), false
116+
«system_layer(system.name.toLowerCase, false, ros_distro
121117
«ENDIF»
122118
«ELSE»«FOR stack : system.getComponentStack()»«IF !generator_helper.listOfRepos(stack).isEmpty()»
123-
«extra_layer(get_name(stack.name.toLowerCase, ros_distro), String.join("/", get_name(system.name.toLowerCase, ros_distro), system.name.toLowerCase + "_" + stack.name.toLowerCase)
119+
«extra_layer(system.name.toLowerCase, stack.name.toLowerCase, ros_distro)»
124120
«stack_layer(system.name.toLowerCase, stack.name.toLowerCase, ros_distro, true
125121
«ELSE»
126122
«stack_layer(system.name.toLowerCase, stack.name.toLowerCase, ros_distro, false

0 commit comments

Comments
 (0)