0

我正在运行 AWS CodePipeline 教程,并且有这一步

说我必须创建一个运行 bash 脚本的 jenkins 作业,该脚本将连接到 EC2 实例(不是运行 jenkins 的实例,而是之前部署代码的实例)。

据说我必须通过在 bash 脚本中运行此命令来连接到 EC2 实例:

TEST_IP_ADDRESS=192.168.0.4 rake test

但我的直觉是,这一步是完全错误的。

没有这个名称的变量,也没有像这样连接到外部实例的选项。

我已经成功完成了所有步骤,但这一步显然是错误的

4

2 回答 2

0

bash 脚本将在您的 jenkins 实例中运行,它会向您在TEST_IP_ADDRESS中配置的实例发出 HTTP 请求

当您添加“构建步骤”并选择“执行 shell”时,您将输入:

TEST_IP_ADDRESS=192.168.0.4 rake test

您正在定义TEST_IP_ADDRESS变量,因此由您决定给它一个适当的值。

于 2015-10-29T22:54:35.617 回答
0

首先我有同样的困惑,然后我看到了源代码,它非常不言自明:

#!/usr/bin/env ruby

require 'net/http'
require 'minitest/autorun'
require 'socket'

class JenkinsSampleTest < MiniTest::Unit::TestCase
  def setup
    uri_params = {
      :host => ENV['TEST_IP_ADDRESS'] || 'localhost',
      :port => (ENV['TEST_PORT'] || '80').to_i,
      :path => '/index.html'
    }
    @webpage = Net::HTTP.get(URI::HTTP.build(uri_params))
  end

  def test_congratulations
    assert(@webpage =~ /Congratulations/)
  end
end
于 2019-11-25T09:07:16.940 回答