Có cách nào nhằm mục đích lưu trữ dữ liệu không nhạy cảm trong Jenkins trong phạm vi cấu hình bản dựng để có thể đọc dữ liệu đó từ tập lệnh đường ống không?
Chúng tôi đang di chuyển sang máy chủ Octopus Deploy mới và Jenkinsfile của chúng tôi trông như thế này:
đường ống {
môi trường {
OCTOPUS_CLI_SERVER = "https://octopus.example.com"
OCTOPUS_CLI_API_KEY = thông tin xác thực("Octopus_Deploy_ApiKey")
}
//...
}
Tôi có thể cập nhật khóa API một cách tập trung thông qua trình quản lý thông tin xác thực Jenkins, nhưng tôi sẽ phải chỉnh sửa và gửi thay đổi cho OCTOPUS_CLI_SERVER
trong mọi nhánh, vì URL được mã hóa cứng. Miễn là tôi đang thay đổi điều này, tôi tự hỏi liệu có cách nào tốt hơn là chỉ mã hóa cứng một giá trị mới hay không.
Tôi có thể lưu trữ URL máy chủ Octopus trong trình quản lý thông tin xác thực và truy cập nó theo cùng một cách, nhưng sau đó giá trị của nó sẽ bị xóa khỏi nhật ký và điều đó có thể gây khó chịu. Lý tưởng nhất là những gì tôi đang tìm kiếm có thể có giá trị khác cho nhiều dự án. Ví dụ: cả Dự án A và Dự án B đều có thể đọc biến có tên "PUBLIC_DOMAIN", nhưng một biến sẽ nhận "a.example.com" và biến kia sẽ nhận "b.example.com".
Tôi đang đề cập đến Octopus Deploy vì đó là thay đổi mà chúng tôi đang thực hiện, nhưng câu hỏi này có thể áp dụng cho bất kỳ dữ liệu nào được truy cập từ một đường dẫn Jenkins, điều này không dành riêng cho Octopus Deploy.