travis-ci - tutorial - travis deploy
¿Cómo especificar una carpeta de compilación en Travis? (5)
Agregando a continuación en su archivo .travis.yml debería hacerlo:
before_script: cd <project_name>
script:
- sbt compile
- sbt test
Tengo un user/repo
repositorio github pero el proyecto real está en una subcarpeta user/repo/project/build.sbt
¿Qué debo escribir en .travis.yml
para hacer que Travis ignore la carpeta superior y trabaje solo en la carpeta del proyecto?
Inspirado por this probé lo siguiente que no funcionó:
env:
global:
- REPO="user/repo"
- CI_HOME=`pwd`/$REPO
script: sh -c ''cd $CI_HOME/project'' && sbt ++$TRAVIS_SCALA_VERSION package
Registro de errores:
$ sh -c ''cd $CI_HOME/project'' && sbt ++$TRAVIS_SCALA_VERSION package
Detected sbt version 0.12.2-RC1
/home/travis/build/user/repo doesn''t appear to be an sbt project.
Lo ideal sería que haya una forma de especificar la carpeta de compilación, pero deje que Travis maneje el comando de compilación.
Intenté usar esto en mi archivo travis.yml pero no funcionó
before_script: cd project
Entonces probé esto
before_install: cd project
Y eso funcionó 😅
Para Pipelines Bitbucket, al seguir esta guía de configuración , puede obtener este error si su proyecto está en una subcarpeta de la raíz de git:
chmod: no puede acceder a ''gradlew'': no existe tal archivo o directorio
Así que usa esta modificación en tu bitbucket-pipelines.yml para convertirla en una subcarpeta, antes de compilar el código:
imagen: mingc / android-build-box: más reciente Tuberías: defecto: - paso: guión: - proyecto de cd - chmod + x gradlew - ./gradlew assembleDebug
Simplemente escriba un script de shell y utilícelo para construir su proyecto. Asegúrate de que funcione localmente. Algo como esto debería hacer el truco:
build.sh
:
#!/bin/sh
cd $TRAVIS_BUILD_DIR/project
sbt ++$TRAVIS_SCALA_VERSION package
.travis.yml
:
script: build.sh
También podría intentar agregar la siguiente línea en su archivo .travis.yml :
before_script: cd project