Options for Deploying Azure Function Code from JFrog to Blob Storage

AzureKnwGt-8579 20 Reputation points
2024-12-02T07:04:42.8666667+00:00

The goal is to deploy an Azure Function that runs on Java, using an artifact (zip archive) stored in JFrog. Currently, the only method identified for deploying this artifact is transferring it to Azure Blob Storage and utilizing the URL for the WEBSITE_RUN_FROM_PACKAGE setting. Is this the only viable option?

Additionally, there is a need to create an Azure Storage account with Public network access disabled to adhere to existing policy requirements. How can the transfer of artifacts from JFrog to Blob Storage be automated? One possibility considered is implementing a GitHub action; however, there are concerns about uploading to Blob Storage even if 'AzureServices' is allowed as a bypass for NetworkRuleSet. Is creating a Private endpoint the only feasible solution?

Azure Functions
Azure Functions
An Azure service that provides an event-driven serverless compute platform.
5,476 questions
{count} votes

1 answer

Sort by: Most helpful
  1. VenkateshDodda-MSFT 23,971 Reputation points Microsoft Employee
    2024-12-02T14:31:37.0733333+00:00

    @AzureKnwGt-8579 Thanks for posting this question in Microsoft Q&A. If you are deploying your functions in consumption plan it will support run functions from a package using the storage URL but it doesn't support virtual networking and other options.

    https://learn.microsoft.com/en-us/azure/azure-functions/run-functions-from-deployment-package#enable-functions-to-run-from-a-package

    Regarding your second question automating the artifact from Jfrog to Blob storage via private network.

    As the per JForg documentation I dont see any option to access the storage account artifacts via selected networks or through disabling public networks since this is an integration with 3rd party, I suggest you check with JForg support team .

    Alternatively, as a workaround I see that JForg have these rest API that might be helpful for your requirement. You can create a logic app using the http action to download the content of artifact and thereby using the create blob action to create blob in your storage account.

    Hope this helps, let me know if you have any questions on this.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.