Workers embedded in apps - still supported?

Still finding…did see one recent similar report of this and Support responded:

Did you notice this comment in the readme file in the github repository?
workers/worker.js
Use this file to add a Cloudflare Worker to your app. Each app may contain one worker. If you don’t want to use workers, just delete this file along with the workers configuration in install.json.

Although, I don’t see that line in the readme :frowning:…now on a fact find & verify mission

2 Likes

Thanks @matteo, @chasers.

@cloonan - appreciate the digging. Can confirm I had previously tested this app as working in the App Creator console.

@cloonan Have you been able to turn up any more details on this?

^the comment from @chasers is correct. I’ve been unsuccessful in finding the why part…

Maybe @KentonVarda or @rita know something or know who to contact?

I just looked into deploying workers in Apps too and it took some time finding this thread.

I’m at a situation where I need clients to be able to either:

  1. Preferably install CF App with Worker (And KV -> not possible it seems)
  2. Point their subdomain to a CNAME on my CF account so we can host the Worker for them.

While I really love workers, it doesn’t seem like we can get them out to customers for actual use…

If this isn’t resolved soon, we’ll have to port all of the code to AWS Lambdas, which is the only FaaS that seem to support this.

The only current method as I see it, is that we manage their Domain/DNS/worker completely - by them changing their nameserver to cloudflare - this has a lot of problems and I’m not sure Cloudflare allows this - and it’s not possible when they already have Cloudflare.

@zack Might as well tag you here too, since I e-mailed you about it.

1 Like

I was a bit worried when they stopped taking new Apps with workers but I’m pretty sure I could use the API to setup a worker for them if they were already on Cloudflare (if they give me some API keys). Maybe you could do this? Obviously not as ideal as an app but would still work. If your customer is not on Cloudflare this doesn’t help, but if they’re not on Cloudlfare an App with a worker won’t help either.

And yes, can confirm this.

I thought about managing the Worker via the new API keys too, however, our app is 100% built in Workers + KV so we cannot let them have the source code - because then they wouldn’t need us.

So, the reason we’re not taking new apps with Workers right now is basically just that we have too much stuff on our plate and not enough engineers to do it all at once.

Workers is still in the very early stages as a platform, and there’s a lot of stuff we’re working on to make it better. For example, we need better observability tools, versioning, the ability to use more than 50ms CPU, etc. A lot of these things are especially needed by Apps. We decided that Apps with Workers at present isn’t really ready for broad adoption, and if we accept lots of apps now we’d actually end up making it take longer to get the platform where we want it, because we’d end up spending our time patching over the missing pieces rather than really fixing them.

We know Apps with Workers is a big part of the future of Workers and Cloudflare – in fact, we expect to rebuild some of Cloudflare’s own core features on top of it. We don’t have a specific timeline for when we’ll get back to it, but we’ll get there eventually.

7 Likes

Thanks for the information, it’s good to know it’s on track at least.
I was worried that Workers was going the Google route :wink:

I guess we’ll just have to wait then.

Thanks @KentonVarda. It definitely feels like Apps as a platform is not getting the attention it deserves. Knowing there is a long term plan for it allows me to continue to invest appropriately.

3 Likes

I’m also working on a Cloudflare app that needs a worker to operate.
Are workers in apps causing any unforeseen issues? If no, would it be possible for you guys to loosen this restriction? @KentonVarda

@KentonVarda Just want to be clear here. I’ve been working on a cloudflare app for a while now and haven’t tried to upload it yet. Are you saying that all new Apps are not being taken in as new submissions right now? Or are you saying some specific form of Apps are not being considered? I’m not seeing any documentation on the doc site (or where you would upload it) as to this information you’ve shared and would realllly hate to be wasting a lot of my time on something that won’t be considered once I finish. Some clarity on that statement would be very important to unblock me and restore some faith in the platform here. I know it’s a lot of work on y’alls side but there is also a lot of work invested on our side and silently not taking submissions anymore would be very disappointing to hear and so depressing to learn that’s how it was handled.

Hi @DevelopSean,

We specifically aren’t currently accepting Apps that use Cloudflare Workers to run code directly on Cloudflare’s servers (as opposed to in the browser or your own server). This is a new kind of app that we briefly had in beta testing, but we ended up discontinuing that beta without launching because we didn’t feel the product was ready yet.

The Apps with Workers documentation has a prominent warning at the top saying we are not currently accepting this kind of app. That warning has been present for at least six months.

If your app does NOT use Workers, then my understanding is you are free to submit your app. Disclaimer: Apps and Workers are separate products, and my personal focus is on Workers; I do not personally know very much about Apps in general.

Kenton, thanks for that clarification. After getting through the initial phase of work, that doc for setting up the worker isn’t something I’ve ever had to go back to so that was completely missed and it doesn’t appear anywhere else I’ve been referencing. Additionally, it was my expectation that the “beta workers support“ was referring to workers in general not for worker based apps because, at the time, it was all very newly launched. That’s not CloudFlare’s fault for my misinterpretation of that but probably good feedback that Apps with Workers and Workers aren’t immediately obvious that they are different products with different support levels. Other than that single doc, I’m not sure how else it could have been handled better.

Unfortunately, it does appear that my work has been wasted unless there is another way for “modifying requests and content of the user’s site” without workers support.

I’ve got a ton of feedback for the apps developer experience (with workers) if y’all are ever have the need for it on the user research front. I was rooting heavily for this platform with a bunch of app plans queued up that rely on workers :sweat_smile:

Hi @DevelopSean,

If you’ve already done a bunch of work specifically on an app that requires workers, we may be able to make an exception for you, with the caveat that we can’t provide a lot of support right now. Mainly we don’t want new people developing a lot of new apps because we just aren’t able to handle the support burden right now, but there are a few apps we’ve grandfathered in.

Again, I don’t speak for the Apps team, only the Worker team, so I can’t personally promise anything, but let me try pinging some people…

@DevelopSean I haven’t looked into the specifics of it in a while but you could probably work something up to deploy workers on behalf of your users to their own Cloudflare accounts. I remember looking into it briefly when the Apps with Workers beta closed.

@KentonVarda

I understand that you are not accepting the new application for Cloudflare for workers.
But, is there any way we can test it locally as I am not able to test the app on App Creator

@w3dev I would suggest creating a regular Cloudflare Worker. There is no hold on regular Cloudflare Workers. https://workers.cloudflare.com

The thing that is on hold is the Cloudflare App Store where you could potentially sell your worker to other people to use on their own sites. Instead of using the app store, you can always share the raw worker code with other people, and they can then install it on their own site like any other worker.