GitHub Workflows and App Store

Hi,

So I’ve made a NC Exchange Integration app for the community. But now I needs some help setting up some GitHub workflows, and some help packaging the app for the app store.

Yes, I’ve read the documentation on “How to post your app to the app store”, and I understand most of it. But need clarification on a few things.

Although I have no issues writing pages of code the Github workflows etc are completely above my head at the moment. I figured, maybe someone here would be willing to help me, instead of me wasting hours fumbling through it.

Please have a look at the link below, to see what I have so far. Its mostly just what came with the skeleton app.

Sebastian

What exactly do you need in terms of GitHub actions? What should be done? On what occasion?

Hi @christianlupus

Thanks for the reply!

Well the only action I can think of is when I create a release I would like it posted to the app store.

I do get a lot of failure messages at the moment, every time I push to Git hub “Lint info.xml: All jobs have failed”

After that what would you recommend?

Well, fixing the issues. This is no problem with the GitHub actions. They are just warning you of different incompatibilities. Take this example:

This tells you that in your info.xml file, there is a bug. This might work but is not guaranteed to do.
Having a look at the workflow file, you find the test is just a XSD check. The XSD file is this one.

Having a look at the XSD and the XML file in your repo, you quickly find that the ordering of the XML elements is off. The order is id, name, summary, description, version, licence, author, and then namespace. You have id, namespace, category, name, etc. Fix that ordering and the linting of the info.xml will succeed most probably.

The issue with the eslint linter is that there was a bug in the NC appstore while you created the app initially. In these lines the $ signs come from a typo in the appstore that built the boilerplate code. Just replace the $ by the corresponding versions (you see here how it should look like).

Thank you @christianlupus that information was very helpful.

I had no idea that the xml elements needed to be in a specific order.

Now I’m try to please Lint, without breaking my code. But I should probably start a new thread for that issue.

Sebastian

1 Like

Regarding the publishing of the app in the appstore automatically, you can have a look at this file. You might need to tweak according to your needs but it seems rather safe to use.


One remark though: Are you planning on moving the app to the nextcloud organization? If yes, you should be aware that your secrets are not secret anymore (I had the same issue with another app) and ended up with recreating keys. Just be warned about that and that you might need a more sophisticated release process once you moved.

Hi @christianlupus ,

Once again thank you! You’ve been very helpful. For not I will be keeping the app on my github account, but I will probably move it to the NC org eventually.

Sebastian