Open qazimun opened 2 months ago
Hey @qazimun! I'm here to help you with that Superset-Worker-Beat container issue. I can assist with bug fixes, answer questions, and guide you to become a contributor. Let's tackle this together!
To resolve the missing script 'po2json.sh' error during the build-translation process in the Superset-Worker-Beat container, you need to ensure that the po2json.sh
script is present in the superset-frontend/scripts/
directory. Here is the content of the po2json.sh
script:
#!/bin/bash
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# This script generates .json files from .po translation files
# these json files are used by the frontend to load translations
set -e
for file in $( find ../superset/translations/** -name '*.po' );
do
extension=${file##*.}
filename="${file%.*}"
if [ $extension == "po" ]
then
echo "po2json --domain superset --format jed1.x $file $filename.json"
po2json --domain superset --format jed1.x $file $filename.json
prettier --write $filename.json
fi
done
Ensure that this script is executable and located in the correct directory. You can create the script file and add the above content to it. Then, make it executable with the following command:
chmod +x superset-frontend/scripts/po2json.sh
This should resolve the missing script error [1].
To continue talking to Dosu, mention @dosu.
the file is already there in directory
I can't seem to reproduce the issue.
Did it work when you retried in 2nd/3rd attempt and so forth?
Check that the file po2json.sh in LF format
Bug description
While building the Superset-Worker-Beat container, the build process fails due to the missing script po2json.sh when running the npm run build-translation command. This leads to an error with exit code 127, indicating that the script cannot be found in the expected path.
How to reproduce the bug
Attempt to build the Superset-Worker-Beat container using the provided Dockerfile. The build process reaches the RUN if [ "$DEV_MODE" = "false" ]; then npm run build-translation; else echo "Skipping translations in dev mode"; fi command. The process fails because scripts/po2json.sh is not found.
Screenshots/recordings
Superset version
master / latest-dev
Python version
3.9
Node version
16
Browser
Chrome
Additional context
No response
Checklist