无法解析.travis.yml

时间:2018-05-27 10:36:04

标签: docker travis-ci aws-ecs

我尝试使用GitHub,Travis CI和AWS ECS创建CI管道。当我推送提交主分支时,我在travis CI中收到错误:'无法解析.travis.yml'。我无法弄清楚,问题出在哪里。特拉维斯没有提供有关错误的更多信息。

有一个代码,我正在使用:

.travis.yml

language: csharp
dist: trusty
sudo: required
mono: none
dotnet: 2.0.0
branches:
    only:
        - master
before_script:
    - chmod -R a+x scripts
script:
    - ./scripts/dotnet-build.sh
    - ./scripts/dotnet-publish.sh
    - ./scripts/docker-publish-travis.sh

dotnet-build.sh

 dotnet restore 
 dotnet build

dotnet-publish.sh

dotnet publish ./BookMeMobi2 -c Release -o ./bin/Docker

dotnet-publish-travis.sh

pip install --user awscli
eval $(aws ecr get-login --no-include-email --region eu-central-1)
docker build -t bookmemobi2 .
docker ps
docker tag bookmemobi2:latest 601510060817.dkr.ecr.eu-central-1.amazonaws.com/bookmemobi2:latest
docker push 601510060817.dkr.ecr.eu-central-1.amazonaws.com/bookmemobi2:latest

我不知道问题出在哪里。你可以帮帮我吗?

3 个答案:

答案 0 :(得分:2)

使用yamllint,您可以安装它,也可以将其粘贴并粘贴到web-based version

通过问题中的示例,我得到:

  

):找到的字符在扫描第7行第1列的下一个令牌时无法启动任何令牌

第7行有一个标签。请参见“ A YAML file cannot contain tabs as indentation”。

答案 1 :(得分:0)

我有类似的问题。就我而言,我使用python启动了两个脚本。我和您一样,一开始就将它们一个接一个地连字符。因此,我进行搜索,发现可以将所有脚本放在同一行中,并在每个脚本之间加上“&”,从而摆脱了连字符。

我所拥有的:

class base 
{
    friend std::ostream& operator<<(std::ostream& output, const base& b)
    {
        b.print(output);
        return output;
    }
    virtual void print(std::ostream& output) const {
        output << // base details... 
    }
public:
    virtual ~base() = default;
};

class derived : public base
{
    virtual void print(std::ostream& output) const override {
        output << // derived details...
    }
};

更改为:

 script: 
 - python  test_Math_DC.py
 - python test_Math_Moy.py
 - python test_Math_Var.py
 - python test_Math_SQRT.py

您可以尝试:

script: python test_Math_DC.py & python test_Math_Moy.py & python test_Math_Var.py & python test_Math_SQRT.py

或类似的东西:

script: ./scripts/dotnet-build.sh & ./scripts/dotnet-publish.sh & ./scripts/docker-publish-travis.sh

看看效果如何。

答案 2 :(得分:0)

travis cli工具具有短绒棉

gem install travis

但是,该示例仅给出警告。另外,它当前不适用于所有功能,例如阶段。

$ travis lint
Warnings for .travis.yml:
[x] unexpected key mono, dropping
[x] unexpected key dotnet, dropping