Skip to content

Commit 479d3ce

Browse files
committed
LPD-67521 Allow users to select a SaaS environment
1 parent e5a5fee commit 479d3ce

File tree

2 files changed

+36
-6
lines changed

2 files changed

+36
-6
lines changed

README.markdown

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -542,6 +542,8 @@ lec init # No args
542542
lec init LPP-12345 # Pass in the LPP ticket number
543543

544544
lec init LPP-12345 dxp-2025.q3.0 # Pass in the LPP ticket number and the Liferay version
545+
546+
lec init LPP-12345 abc1prd # Pass in the LPP ticket number and the SaaS environment name
545547
```
546548

547549
Start the workspace:

scripts/cli/lec.sh

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ if [[ -z "${LEC_WORKSPACES_DIR}" ]]; then
77
LEC_WORKSPACES_DIR="${LEC_REPO_ROOT}/../lec-workspaces"
88
fi
99

10+
if [ "" == "${LXC_REPOSITORY_PATH}" ] && [ -d "${HOME}/dev/projects/liferay-lxc" ]; then
11+
LXC_REPOSITORY_PATH="${HOME}/dev/projects/liferay-lxc"
12+
fi
13+
1014
#
1115
# Git helper functions
1216
#
@@ -255,6 +259,13 @@ _listReleases() {
255259
_listRunningProjects() {
256260
docker compose ls --format=json | jq -r '.[] | .ConfigFiles' | sed 's@,@\n@g' | grep compose-recipes | sed 's,/compose-recipes/.*,,g' | sort -u
257261
}
262+
_listSaaSEnvironments() {
263+
if [ ! -d "${LXC_REPOSITORY_PATH}/automation/environment-descriptors/" ]; then
264+
return 0
265+
fi
266+
267+
ls -1 "${LXC_REPOSITORY_PATH}/automation/environment-descriptors/" | grep '\.json$' | sed 's/\.json$//g'
268+
}
258269
_listWorktrees() {
259270
_git worktree list --porcelain | grep worktree | awk '{print $2}'
260271
}
@@ -302,14 +313,23 @@ _getWorktreeDir() {
302313
_listWorktrees | grep "/${worktree_name}$"
303314
}
304315
_selectLiferayRelease() {
305-
_listReleases | fzf --height=50% --reverse
316+
(
317+
_listReleases
318+
_listSaaSEnvironments
319+
) | fzf --height=50% --reverse
306320
}
307321
_verifyLiferayVersion() {
308322
local liferay_version="${1}"
309323

310-
if ! _listReleases | grep -q "${liferay_version}"; then
311-
_errorExit "'${liferay_version}' is not a valid Liferay version"
324+
if test -f "${LXC_REPOSITORY_PATH}/automation/environment-descriptors/${liferay_version}.json"; then
325+
return 0
312326
fi
327+
328+
if _listReleases | grep -q "${liferay_version}"; then
329+
return 0
330+
fi
331+
332+
_errorExit "'${liferay_version}' is not a valid Liferay version"
313333
}
314334
_writeLiferayVersion() {
315335
local worktree_dir="${1}"
@@ -318,10 +338,18 @@ _writeLiferayVersion() {
318338
(
319339
cd "${worktree_dir}" || exit
320340

321-
sed -E -i.bak "s/^liferay.workspace.product=.*$/liferay.workspace.product=${liferay_version}/g" gradle.properties
322-
rm gradle.properties.bak
341+
if [ -f "${LXC_REPOSITORY_PATH}/automation/environment-descriptors/${liferay_version}.json" ]; then
342+
sed -E -i.bak "s/^lr.docker.environment.lxc.environment.name=.*$/lr.docker.environment.lxc.environment.name=${liferay_version}/g" gradle.properties
343+
rm gradle.properties.bak
323344

324-
echo "Liferay version set to ${liferay_version} in gradle.properties"
345+
echo "LXC environment set to ${liferay_version} in gradle.properties"
346+
blade gw copyLiferayLXCRepositoryConfigurations
347+
else
348+
sed -E -i.bak "s/^liferay.workspace.product=.*$/liferay.workspace.product=${liferay_version}/g" gradle.properties
349+
rm gradle.properties.bak
350+
351+
echo "Liferay version set to ${liferay_version} in gradle.properties"
352+
fi
325353
)
326354
}
327355

0 commit comments

Comments
 (0)