簡體   English   中英

如何將字符串從 fastlane 返回到 jenkins groovy 變量?

[英]How do I return string from fastlane to jenkins groovy variable?

在快車道上有一條車道

lane :ipa_path do |options|
 “<ipa path>.ipa”
end

如何將 ipa_path 通道返回的字符串存儲在 groovy 腳本變量中?

在你的 Fastlane/fastfile

    # Your lane in your fastfile.
    lane :ipa_path do |options|
        ENV["SOME_VAR"] = options[:my_passed_in_option]
        # After calling build_app action to compile/create IPA
        # this lane context value will exist: IPA_OUTPUT_PATH    
        ENV["MY_IPA_PATH"] = lane_context[SharedValues::IPA_OUTPUT_PATH]
    end

在您的 Jenkinsfile 中...

    // Use this in Jenkinsfile.
    stage('Test IPA Path') {
        steps {
           sh "bundle exec ipa_path my_passed_in_option:"some_string_value" --env jenkins"
           sh "echo 'IPA Path is: ${MY_IPA_PATH}" // path_to_IPA_file.IPA
           IPA_PATH = MY_IPA_PATH
           sh "echo 'Some Var is: ${SOME_VAR}" // some_string_value
           SOME_VARIABLE = SOME_VAR
        }
    }

不幸的是,我認為沒有辦法將值從 fastlane 傳遞到父進程。 到目前為止,我發現可能的唯一方法是將字符串等寫入文件。

File.write("output.txt", "your ipa path here")

從那里,您可以調用並將其設置為服務器中的環境變量。 像這樣的東西:

export MY_ENV=$(cat output.txt)

參考文獻1、2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM