2023-05-15 10:58:01 -07:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
|
|
module EnvironmentWriter
|
|
|
|
|
def set_output(name, value)
|
|
|
|
|
modify_env("GITHUB_OUTPUT", name, value)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def set_environment(name, value)
|
|
|
|
|
modify_env("GITHUB_ENV", name, value)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
|
|
def modify_env(file, name, value)
|
|
|
|
|
return if value.nil?
|
|
|
|
|
|
2023-05-15 15:39:52 -07:00
|
|
|
raise ArgumentError, "Invalid input: #{name}=#{value}" if value.include?("\n")
|
|
|
|
|
|
2023-05-15 10:58:01 -07:00
|
|
|
File.open(ENV[file], "a") do |f|
|
|
|
|
|
f.puts "#{name}=#{value}"
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|