Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使travis ci在成功构建后压缩我的项目并将其推送到github_Java_Maven_Github_Travis Ci - Fatal编程技术网

Java 使travis ci在成功构建后压缩我的项目并将其推送到github

Java 使travis ci在成功构建后压缩我的项目并将其推送到github,java,maven,github,travis-ci,Java,Maven,Github,Travis Ci,我目前正在开发一个简单的java项目,它存储在github存储库中,由maven构建,Travis ci在将更改推送到存储库后自动构建。我的老师要求,在travis ci自动成功构建之后,我压缩整个项目并存储它。 我已经完成了与maven的项目压缩。它将我的zip文件带到我项目的src/main/resources,这样我就可以将ziip文件推送到我的github存储库中。但是当travis创建zip文件时,它不会将zip推送到github中的我的存储库中。相反,它会将zip文件生成到/home

我目前正在开发一个简单的java项目,它存储在github存储库中,由maven构建,Travis ci在将更改推送到存储库后自动构建。我的老师要求,在travis ci自动成功构建之后,我压缩整个项目并存储它。 我已经完成了与maven的项目压缩。它将我的zip文件带到我项目的src/main/resources,这样我就可以将ziip文件推送到我的github存储库中。但是当travis创建zip文件时,它不会将zip推送到github中的我的存储库中。相反,它会将zip文件生成到/home/travis/build/my user/

travis终端上就是这么说的: [信息]构建zip:/home/travis/build/fabiophillip/calculadoralib/src/main/resources/calculadoralib-0.0.1-SNAPSHOT-assembly.zip


如何让travis ci将此zip推送到我的github存储库,而不是我不知道如何访问的此travis文件夹?

要将zip上载到github,您可以提交回repo或使用需要使用标记的github版本

我建议将您的zip上传到

您可以从Travis上传到S3,方法如下:下面是一个简短的示例,您可以将其添加到
.Travis.yml

deploy:
  provider: s3
  access_key_id: "YOUR AWS ACCESS KEY"
  secret_access_key: "YOUR AWS SECRET KEY"
  bucket: "S3 Bucket"
  skip_cleanup: true

你可以使用我所做的

您只需要压缩您的项目,并使其成为在所有标记的提交上部署到github发行版的文件

要压缩文件夹:

cd to the folders repository
zip whatyouwanttonamethezip
这会将当前目录(包括所有子目录)复制到存档文件中

这将在git repo的tags/releases选项卡上创建此按钮。

创建并按下标记时,下面的配置将执行以下操作:

  • 特拉维斯将克隆回购协议(名为“api”)
  • 回购协议已经建立
  • 回购协议已关闭
  • Zip作为标记的版本下载上传到GitHub
  • 我正在使用PHP,但步骤应该是一样的

    dist: trusty
    language: php
    php: 7.1
    
    env:
     global:
     - REPO=api
     matrix:
      - BUILD_ENV=test
      - BUILD_ENV=qa
    
    install:
    - composer install --no-interaction
    
    branches:
      # expected format: v1.0.0
      only:
      - /^v\d+(\.\d+)+$/
    
    before_deploy:
    - cd ..
    - tar -zcf ${TRAVIS_BUILD_DIR}${REPO}-${BUILD_ENV}-${TRAVIS_TAG}-${TRAVIS_BUILD_NUMBER}.tar.gz ${REPO}
    
    deploy:
      # GitHub - Add zip to release
      - provider: releases
        api_key:
          secure: "YOUR GITHUB API KEY"
        file: ${TRAVIS_BUILD_DIR}${REPO}-${BUILD_ENV}-${TRAVIS_TAG}-${TRAVIS_BUILD_NUMBER}.tar.gz
        skip_cleanup: true
        on:
          tags: true
    

    随时随地发布:| |到GH页面:在Maven项目中,输入文件位于
    /src
    目录中,输出文件在
    /target
    目录中创建。见: