Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building functions outside of Fission and deploying to Fission? #2836

Open
joelcomp1 opened this issue Sep 15, 2023 · 2 comments
Open

Building functions outside of Fission and deploying to Fission? #2836

joelcomp1 opened this issue Sep 15, 2023 · 2 comments

Comments

@joelcomp1
Copy link

In the documentation Offline On-Premise they mention in this type of environment that the builder won't work especially with private artifact registries (like Nexus / Artifactory).

I am wondering if its currently supported to build the functions outside of Fission say in Gitlab/Github and then just deploy the function as is? I looked at running container as a function but I think in that case I still have to implement the Flask REST API on my end. I would like to use the ability to just write my function but not use the cluster builder and instead build it offline / locally then just have fission deploy it using the Function CRD.

I can't tell if this is supported or not?

@jaynis
Copy link

jaynis commented Feb 13, 2024

I am looking for exactly the same feature: I want to be able to build the functions ahead of time in some CI pipeline and then distribute the resulting artifacts to fission (probably as an archive) and I am wondering if there is a designated way to do this without resorting to the full-blown container approach where I have to bring a HTTP framework myself. I think building functions (which potentially use dependencies) on-premise without internet access is virtually not possible respectively a tremendous amount of effort.

@jaynis
Copy link

jaynis commented Feb 13, 2024

I succeeded in building a function (in my case written in go) outside of the cluster using the fission/go-builder-1.16 image, then I added the resulting artifact to a minimal nginx image which serves the artifact under a certain endpoint and deployed it to the fissio cluster. Afterwards I configured the url as the spec.deployment.url on the Package which my Function uses and eventually I was able to use the function in the cluster.
This way I can distribute pre-built functions as containers but I am still wondering if there is an easier solution than that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants