Blob Blame History Raw
# Note(gotmax23): I'm trying to get rid of the need for control macros in favor
# of a metadata based approach. %%ansible_collection_url is the only macro that
# requires manually specifying the collection namespace and name, as it is used
# at the SRPM build stage.
#
# Currently, this macro supports either passing this information as arguments
# or defining the control macros. In order to reduce confusion, this is not an
# either or approach. Both arguments must be passed OR both control macros must
# be defined.

%ansible_collection_url() %{lua:
    local namespace_name = nil
    if rpm.expand("%collection_namespace") ~= "%collection_namespace"
            and rpm.expand("%collection_name") ~= "%collection_name" then
        namespace_name = rpm.expand("%collection_namespace") .. "/" .. rpm.expand("%collection_name")
    end
    if rpm.expand("%1") ~= "%1" and rpm.expand("%2") ~= "%2" then
        namespace_name = rpm.expand("%1") .. "/" .. rpm.expand("%2")
    end
    if not namespace_name then
        rpm.expand("%{error:%%ansible_collection_url: You must pass the collection " ..
            "namespace as the first arg and the collection name as the second}")
    end
    print("https://galaxy.ansible.com/" .. namespace_name)
}