extensions icon indicating copy to clipboard operation
extensions copied to clipboard

Add `HestiaCP` (Admin) extension

Open xmok opened this issue 1 year ago • 3 comments

Description

This is a Raycast extension for Hestia Control Panel Admin level accounts. With this extension you can manage Users, Domains, Mail Domains, Databases, and more. This is an extension I started in February but only recently got the time to work more on. Thus, there are a LOT of features/endpoints/commands that I have NOT yet incorporated but will in the future as I am running HestiaCP (see last section of README).

Screencast

https://github.com/raycast/extensions/assets/30526133/94dc81d5-a38e-4669-ad2f-326e521f6f4d

Checklist

xmok avatar Jul 06 '24 16:07 xmok

Congratulations on your new Raycast extension! :rocket:

We're currently experiencing high demand and limited capacity. As a result, extension reviews might take longer than usual to get the initial review. Please expect an initial review within 5-10 business days.

Once the PR is approved and merged, the extension will be available on our Store.

Sorry for the inconvenience

raycastbot avatar Jul 06 '24 16:07 raycastbot

Hi! Thank you for your contribution! My name is Milena and I will be reviewing it today.

Do you know if there is a way to get a demo/sample API from Hestia? At the moment, I don't have access to it, which makes it difficult for testing.

mil3na avatar Jul 10 '24 09:07 mil3na

Hi Milena!

There is a HestiaCP demo available at https://demo.hestiacp.com:8083/ which I used initially when I was looking into different panels. At that time they allowed you to use the API but it seems like it has now been disabled (maybe it was because of me 🙈?)

It is possible to install the panel locally e.g. using Canonical Multipass but I understand that would be a lot of work.

The best option I can think of is to use a host that allows you to pre-install HestiaCP e.g. it seems like UltaHost does (not affiliated and never used) and cancel within 30 days to get your money back. This also might be a lot of work

If the above are not possible I will look into setting up a fresh installation on a new VPS but that will definitely take me time to do so as the current HestiaCP installation is a production environment I can not share.

Please let me know how else we can proceed.

xmok avatar Jul 10 '24 12:07 xmok

Well, based on the video you provided, it seems to be okay. Can you give an extra test on possible error cases, like when the user is not logged in or missing preferences? Then, we should be good to merge.

mil3na avatar Jul 12 '24 08:07 mil3na

I sightly tweaked the error handling to make it more robust and made the README a little easier.

All Preferences in the extension are required but if they are incorrect, here are some error cases:

1 Invalid URL e.g. w/o "https" hestiacp-admin-1-invalid-url

2 API is Disabled in HestiaCP hestiacp-admin-2-api-disabled

3 IP is not whitelisted in HestiaCP hestiacp-admin-3-ip-not-allowed

4 Invalid Auth e.g. invalid length of Hash hestiacp-admin-4-invalid-auth-1

5 Invalid Auth e.g. incorrect Key hestiacp-admin-5-invalid-auth-2

6 Trying to add a DB when you have exceeded the limit hestiacp-admin-6-db-limit

xmok avatar Jul 13 '24 15:07 xmok

Published to the Raycast Store: https://raycast.com/xmok/hestiacp-admin

github-actions[bot] avatar Jul 16 '24 08:07 github-actions[bot]

:tada: :tada: :tada:

We've rewarded your Raycast account with some credits. You will soon be able to exchange them for some swag.

raycastbot avatar Jul 16 '24 08:07 raycastbot