Build error with docker and new aXX branch naming: DEVICE_LIST_... invalid variable name

I am following the build-e documentation.
Step 6. Start build, I tried BRANCH_NAME=v3.0.1-a14, which results in

/root/build.sh: line 46: DEVICE_LIST_V3.0.1-A14: invalid variable name
/root/build.sh: line 85: DEVICE_LIST_V3.0.1-A14: invalid variable name

v3.0.1-t and v3.0.1-s don’t have this issue.

build-community.sh#L44 · master · e / os / docker-lineage-cicd · GitLab doesn’t support numbers in the branch name of the tag, sed fails silently, same line 83.

For reference, another post had this error with v2.8-a14, “1st go with the documentation and failing” (can’t add a 3rd link)

Hello @jigsaw, Welcome to the /e/ forum.

if you want latest / current branch (master) you can try using “v1-a14” or “v1-u”

also if you want to use tag, you may try “v3.0.1-u” that is equivalent to “v3.0.1-a14” witch is the new convention (you could get the same error)

hope this trick helps

.

i don’t know docker, as i failled to install it
08. Building an e ROM Using Docker · Wiki · e / documentation / A Generic Guide on porting eOS · GitLab
.
09: Building e OS for an unsupported device · Wiki · e / documentation / A Generic Guide on porting eOS · GitLab
i like to use the repo way…
07: Building an e ROM the Repo Sync way · Wiki · e / documentation / A Generic Guide on porting eOS · GitLab
.
README.md · main · steadfasterX / android vendor e · GitLab

i don’t know the a-14 branch as for now i build for old devices

Thanks!
v1-a14 has the same issue.
I don’t see v3.0.1-u nor v1-u in releases/-/tags. The last release with -u is v2.7-u.
If I try anyway:

...
Running: yes | repo init -u ... -b "v3.0.1-u"
ERROR: Failed to initilize repository

v1-u is syncing. I will update on it.

I will take a look at the repo sync too.

looking at e / os / android · GitLab i understand new convention for BRANCH_NAME is now simply a14 and no more v1-u or v1-a14
look like “v” is now only use for tags

To initialize your local repository using the /e/ trees, use either a tag (you now what you get) or a branch (the latest code of a branch):

repo init -u https://gitlab.e.foundation/e/os/android.git -b refs/tags/<tag>
or
repo init -u https://gitlab.e.foundation/e/os/android.git -b <branch>

old :
repo init -u https://gitlab.e.foundation/e/os/android.git -b refs/tags/v0.9.4-pie
repo init -u https://gitlab.e.foundation/e/os/android.git -b v1-pie
new : 
repo init -u https://gitlab.e.foundation/e/os/android.git -b refs/tags/v3.0.1-a14 --git-lfs
repo init -u https://gitlab.e.foundation/e/os/android.git -b a14 --git-lfs

After starting multiple builds (I am trying to build with an unofficial manifest for LineageOS, so I don’t expect help for my specific use case)
with the repo way and the docker way, I don’t know what to do.

  • repo init, sync, …, brunch start, but ninja is terminated because it uses 100% cpu and I can’t find how to set a limit.
  • The manifest I got requires LineageOS 21, except “t” seems to be with LineageOS 20 only. And “a14” or “a15” won’t work because of the issue mentioned above.

I haven’t found a bugtracker, I am 99% sure it is a bug with the new branch naming containing numbers (check first message).

I ran docker with an additional -v "/srv/e/local_manifests:/srv/local_manifests" -v "/srv/e/build-community.sh:/root/build.sh" to override build-community.sh, and it was able to start the build with v3.0.4-a14.

diff build-community.sh
diff --git a/build-community.sh b/build-community2.sh
index 5d3c5e6..bf7d217 100644
--- a/build-community.sh
+++ b/build-community2.sh
@@ -41,7 +41,7 @@ fi
 # Treat DEVICE_LIST as DEVICE_LIST_<first_branch>
 first_branch=$(cut -d ',' -f 1 <<<"$BRANCH_NAME")
 if [ -n "$DEVICE_LIST" ]; then
-  device_list_first_branch="DEVICE_LIST_$(sed 's/.*-\([a-zA-Z]*\)$/\1/' <<<$first_branch)"
+  device_list_first_branch="DEVICE_LIST_$(sed 's/.*-\([a-zA-Z0-9]*\)$/\1/' <<<$first_branch)"
   device_list_first_branch=${device_list_first_branch^^}
   read $device_list_first_branch <<<"$DEVICE_LIST,${!device_list_first_branch}"
 fi
@@ -80,7 +80,7 @@ if [ "$LOCAL_MIRROR" = true ]; then
 fi
 
 for branch in ${BRANCH_NAME//,/ }; do
-  branch_dir=$(sed 's/.*-\([a-zA-Z]*\)$/\1/' <<<$branch)
+  branch_dir=$(sed 's/.*-\([a-zA-Z0-9]*\)$/\1/' <<<$branch)
   branch_dir=${branch_dir^^}
   device_list_cur_branch="DEVICE_LIST_$branch_dir"
   devices=${!device_list_cur_branch}
4 Likes

either the backlog or place a MR in the docker ci image repo

This topic was automatically closed after 90 days. New replies are no longer allowed.