morph1904 / Tyger2

A Reverse Proxy Application
GNU General Public License v2.0
50 stars 11 forks source link

Migration from TygerCaddy #11

Closed cmoro-deusto closed 4 years ago

cmoro-deusto commented 4 years ago

Hi @morph1904

First of all, thanks a lot for releasing TygerCaddy and Tyger2, they are really useful for me!

I've been using TygerCaddy for quite some time (Ubuntu installation using the install script, without docker) and I would like to migrate to Tyger2.

Is there a recommended procedure for this? I would like to avoid recreating all proxies, hosts, etc. on the new Tyger2 installation, if possible.

Thanks a lot!

morph1904 commented 4 years ago

Hi Sorry for the late reply.

There is currently no method to do this as the database schema is different in the two versions (this is a major re-write). I will see if there is a way I can do some sort of import export though, it may take a few days to look at. I will comment here once I have taken a look.

Morph

cmoro-deusto commented 4 years ago

Hi @morph1904 Thanks a lot for your reply! Understood.

BTW, there's totally no need for you to dedicate time on this if you don't see it fit right now. We can migrate it manually.

Nevertheless, if I can be of any help on this, please let me know!

Thanks again.

morph1904 commented 4 years ago

Hi,

I have just mapped the fields and we have a bit of an issue.

The DB fields do not really map.

| Source  |                      |            | Dest      |                      |            |
|---------|----------------------|------------|-----------|----------------------|------------|
| Model   | Field                | Type       | Model2    | Field3               | Type4      |
| proxies | name                 | CharField  | app       | name                 | CharField  |
| proxies | proxy_from           | CharField  | addresses | address              | CharField  |
| proxies | proxy_to             | CharField  | app       | url                  | CharField  |
| proxies | insecure_skip_verify | Boolean    | app       | insecure_skip_verify | Boolean    |
| proxies | websocket            | Boolean    | app       | websocket            | Boolean    |
| proxies | transparent          | Boolean    | app       | transparent          | Boolean    |
| hosts   | host_name            | CharField  |           |                      |            |
| hosts   | proxy                | ForeignKey | addresses | app                  | ForeignKey |
| hosts   | root_path            | CharField  |           |                      |            |
| hosts   | tls                  | Boolean    | addresses | tls                  | Boolean    |
| hosts   | staging              | Boolean    | addresses | staging              | Boolean    |
| hosts   | dns_verification     | Boolean    | addresses | dns_challenge        | Boolean    |
| hosts   | dns_provider         | ForeignKey | addresses | provider             | ForeignKey |

I could code something for this but a lot of data would not translate or be missing.

Rather than doing a straight import export or migration path, I could look at a more mass update/create feature in Tyger2. Would that be helpful?

Regards Morph.

cmoro-deusto commented 4 years ago

Hi @morph1904 Sorry for my belated reply, other work have kept me from looking into this.

Your suggestion about mass update/create would be awesome.

Nevertheless, I'm happy to tell you that I've just installed and configured Tyger2 and works like a charm.

You might as well close this ticket if you find it suitable.

Thanks very much indeed!!

morph1904 commented 4 years ago

Hi @cmoro-deusto I have logged a new issue as a feature request and I will close this for now. I am not sure how I will go about this just yet, so if you have any ideas, please let me know on Issue #16