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

Add packaging script (without Metabase). #5

Closed
cristianberneanu opened this issue Sep 26, 2022 · 10 comments · Fixed by #38
Closed

Add packaging script (without Metabase). #5

cristianberneanu opened this issue Sep 26, 2022 · 10 comments · Fixed by #38
Assignees

Comments

@cristianberneanu
Copy link
Contributor

We need a script that creates an executable setup package containing PostgreSQL, pg_diffix, Metabase, the GUI app, and the initialization script (which will be executed at the end of the setup process).

@pdobacz
Copy link
Collaborator

pdobacz commented Sep 27, 2022

and the initialization script

is something other than #6 meant here or just leftover and we actually mean just the packaging script in this issue here?

@cristianberneanu
Copy link
Contributor Author

No, it just means that the setup package has to execute the initialization script (if any) at the end of the setup process.

@edongashi
Copy link
Member

The app will be more standalone if it handles setup on the fly. Not sure about Postgres, but I'm going that route with Metabase.

@cristianberneanu
Copy link
Contributor Author

Then it probably makes sense to do the same for Postgres, so there will be no initialization script to execute during setup.

@cristianberneanu
Copy link
Contributor Author

I am now thinking that it would be a good idea to use the packaging tools we already have for Electron to bundle everything together. We could add some npm commands to download and build all the needed files, and then ship them as runtime assets with the app. (That means we need to move the GUI app to the root folder.)

What do you guys think about this approach?

@pdobacz
Copy link
Collaborator

pdobacz commented Sep 28, 2022

Sounds good, like a least effort first approach. If it works - good, if it doesn't, then we roll our own.

However, I didn't work with the npm/electron packaging tools, so I don't know if there aren't obvious hurdles there.

@edongashi
Copy link
Member

edongashi commented Sep 28, 2022

Sounds good to me. If we can prove it's possible to set up Postgres dynamically from the GUI, then having everything in one place is superior to depending on setup scripts.

Example: I delete the metabase database file. If we had a setup script to set it up, one would need to reinstall the whole app to get it working again. Also I'm a fan of portable USB-style apps that can be copied via zip file.

@cristianberneanu
Copy link
Contributor Author

The major drawback will be that all the binaries will be duplicated for each user (since the package will be installed in the user profile folder). But that won't require admin privileges, so it is probably worth it.

@pdobacz pdobacz changed the title Add packaging script. Add packaging script (without Metabase). Oct 11, 2022
@pdobacz
Copy link
Collaborator

pdobacz commented Oct 11, 2022

I'm taking the liberty to limit the scope on this one to just PostgreSQL, leaving the MB part for #37

@pdobacz pdobacz self-assigned this Oct 11, 2022
@pdobacz
Copy link
Collaborator

pdobacz commented Oct 11, 2022

Anyhow, I don't want to block this when I'm away so I'll unnasign myself from here and leave #38 up for consideration. Feel free to take over if you want to continue.

@pdobacz pdobacz removed their assignment Oct 11, 2022
@cristianberneanu cristianberneanu self-assigned this Oct 14, 2022
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

Successfully merging a pull request may close this issue.

3 participants