为了账号安全,请及时绑定邮箱和手机立即绑定

Jenkins作业无法在构建期间将整数参数传递给python脚本

Jenkins作业无法在构建期间将整数参数传递给python脚本

紫衣仙女 2021-04-09 14:15:43
我有一个在EC2实例上测试过的python脚本,该脚本在服务器上可以正常运行,但是当我尝试从Jenkins作业传递相同的参数时,如下所示。我收到错误消息:安全组在vpc vpc-d79691b9中创建了sg -ca09bcae。追溯(最近一次呼叫最近):文件“ ./create_sg.py”,位于'FromPort'中的第32行:int(FROM_PORT_1.strip(“”))),标记为构建失败完成:FAILURE> ValueError:int的无效文字()以10为基数:“在”构建步骤“执行外壳”中我很确定该错误是由于我通过Jenkins参数传递的字符串参数引起的,但是在jenkins参数中没有选择将From和To端口都作为整数发送。如何在Jenkins构建作业中将参数设置为整数?创建SG的Python代码:#!/usr/bin/env pythonimport sysimport boto3from botocore.exceptions import ClientErrorregion = "us-west-1"VPC_ID=sys.argv[1]SECURITY_GROUP_NAME=sys.argv[2]DESCRIPTION=sys.argv[3]IP_PROTOCOL_1=sys.argv[4]FROM_PORT_1=sys.argv[5]TO_PORT_1=sys.argv[6]CIDR_IP_1=sys.argv[7]ec2 = boto3.client('ec2')response = ec2.describe_vpcs()vpc_id = VPC_IDtry:    response = ec2.create_security_group(GroupName=SECURITY_GROUP_NAME,Description=DESCRIPTION,VpcId=VPC_ID)    security_group_id = response['GroupId']    print('Security Group Created %s in vpc %s.' % (security_group_id, vpc_id))    data = ec2.authorize_security_group_ingress(        GroupId=security_group_id,        IpPermissions=[            {'IpProtocol': IP_PROTOCOL_1,             'FromPort': int(FROM_PORT_1),             'ToPort': int(TO_PORT_1),             'IpRanges': [{'CidrIp': CIDR_IP_1}]}        ]    )    print('Ingress Successfully Set %s' % data)except ClientError as e:    print(e)@nosklo,建议我尝试以下操作:VPC_ID=sys.argv[1] SECURITY_GROUP_NAME=sys.argv[2]DESCRIPTION=' '.join(sys.argv[3:-4])IP_PROTOCOL_1=sys.argv[-4]FROM_PORT_1=sys.argv[-3]TO_PORT_1=sys.argv[-2] CIDR_IP_1=sys.argv[-1]与端口相对于我在参数中传递的值一起列出的0。
查看完整描述

2 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

我没有任何测试方法,但是错误消息将无效int值显示为单词“ inside”。这表明Description参数直接被替换为命令行,而没有任何引号,因此sys.argv[5]确实是字符串“ within”。您可以尝试在描述周围加上引号:`“开发环境中的安全组”。


查看完整回答
反对 回复 2021-04-27
?
繁星coding

TA贡献1797条经验 获得超4个赞

我认为您正在寻找的是os.getenv:


import os


VPC_ID = os.getenv('VPC_ID')


print(VPC_ID)

应该管用。


查看完整回答
反对 回复 2021-04-27
  • 2 回答
  • 0 关注
  • 281 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信