This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Hay dos variantes para ejecutar un servidor de build local (también conocido como ‘Extender’):
Antes de poder ejecutar un builder en la nube local, necesitas instalar el siguiente software:
Cuando tengas instalado el software mencionado arriba, sigue estos pasos para instalar y ejecutar los builders en la nube de Defold:
Nota para usuarios de Windows: usa la terminal Git Bash para ejecutar los comandos siguientes.
Autorizar en Google Cloud y crear Application Default Credentials - Necesitas tener una cuenta de Google al descargar las imágenes de contenedor de Docker para que podamos supervisar y garantizar un uso justo del registro público de contenedores y suspender temporalmente las cuentas que descarguen imágenes de forma excesiva.
gcloud auth login
Configurar Docker para usar Artifact Registry - Docker necesita estar configurado para usar gcloud como credential helper al descargar imágenes de contenedor del registro público de contenedores en europe-west1-docker.pkg.dev.
gcloud auth configure-docker europe-west1-docker.pkg.dev
docker pull --platform linux/amd64 europe-west1-docker.pkg.dev/extender-426409/extender-public-registry/extender-base-env:latest
git clone https://github.com/defold/extender.git
cd extender
extender.jar) y la herramienta de fusión de manifiestos (manifestmergetool.jar):
TMP_DIR=$(pwd)/server/_tmp
APPLICATION_DIR=$(pwd)/server/app
# establece la versión necesaria de Extender y de la herramienta de fusión de manifiestos
# las versiones se pueden encontrar en la página de releases de GitHub https://github.com/defold/extender/releases
# o puedes obtener la versión más reciente (consulta el ejemplo de código de abajo)
EXTENDER_VERSION=2.6.5
MANIFESTMERGETOOL_VERSION=1.3.0
echo "Download prebuild jars to ${APPLICATION_DIR}"
rm -rf ${TMP_DIR}
mkdir -p ${TMP_DIR}
rm -rf ${APPLICATION_DIR}
mkdir -p ${APPLICATION_DIR}
gcloud artifacts files download \
--project=extender-426409 \
--location=europe-west1 \
--repository=extender-maven \
--destination=${TMP_DIR} \
com/defold/extender/server/${EXTENDER_VERSION}/server-${EXTENDER_VERSION}.jar
gcloud artifacts files download \
--project=extender-426409 \
--location=europe-west1 \
--repository=extender-maven \
--destination=${TMP_DIR} \
com/defold/extender/manifestmergetool/${MANIFESTMERGETOOL_VERSION}/manifestmergetool-${MANIFESTMERGETOOL_VERSION}.jar
cp ${TMP_DIR}/$(ls ${TMP_DIR} | grep server-${EXTENDER_VERSION}.jar) ${APPLICATION_DIR}/extender.jar
cp ${TMP_DIR}/$(ls ${TMP_DIR} | grep manifestmergetool-${MANIFESTMERGETOOL_VERSION}.jar) ${APPLICATION_DIR}/manifestmergetool.jar
docker compose -p extender -f server/docker/docker-compose.yml --profile <profile> up
donde profile puede ser:
docker compose, consulta https://docs.docker.com/reference/cli/docker/compose/.Cuando docker compose esté activo, puedes usar http://localhost:9000 como valor de Build server address en las preferencias del editor o como valor de --build-server si usas Bob para crear la build del proyecto.
Se pueden pasar varios perfiles a la línea de comando. Por ejemplo:
docker compose -p extender -f server/docker/docker-compose.yml --profile android --profile web --profile windows up
El ejemplo anterior ejecuta las instancias frontend, Android, Web y Windows.
Para detener los servicios, presiona Ctrl+C si docker compose se ejecuta en modo no detached, o
docker compose -p extender down
si docker compose se ejecutó en modo detached (por ejemplo, si se pasó el flag ‘-d’ al comando docker compose up).
Si quieres descargar las versiones más recientes de los jars, puedes usar el comando siguiente para determinar la versión más reciente
EXTENDER_VERSION=$(gcloud artifacts versions list \
--project=extender-426409 \
--location=europe-west1 \
--repository=extender-maven \
--package="com.defold.extender:server" \
--sort-by="~createTime" \
--limit=1 \
--format="value(name)")
MANIFESTMERGETOOL_VERSION=$(gcloud artifacts versions list \
--project=extender-426409 \
--location=europe-west1 \
--repository=extender-maven \
--package="com.defold.extender:manifestmergetool" \
--sort-by="~createTime" \
--limit=1 \
--format="value(name)")
Las builds de macOS e iOS se hacen en hardware Apple real usando un servidor de build ejecutado en modo stand-alone sin Docker. En su lugar, Xcode, Java y otras herramientas necesarias se instalan directamente en la máquina, y el servidor de build se ejecuta como un proceso Java normal. Puedes aprender a configurarlo en la documentación del servidor de build en GitHub.
Sigue las instrucciones del repositorio Extender en GitHub para compilar y ejecutar manualmente un servidor de build local.