Giter Site home page Giter Site logo

More deployment options about cactus HOT 18 OPEN

patrickbeeson avatar patrickbeeson commented on June 8, 2024
More deployment options

from cactus.

Comments (18)

krallin avatar krallin commented on June 8, 2024

Hey there,

In Cactus v3, we support S3, Rackspace Cloud Files (which could probably support Swift in general pretty easily), and Google Cloud Storage.

Did you have something else in mind?

Cheers,

from cactus.

patrickbeeson avatar patrickbeeson commented on June 8, 2024

Cool, didn't realize that. I'd love to be able to deploy to WebFaction.

from cactus.

krallin avatar krallin commented on June 8, 2024

The interface in v3 is supposed to be pluggable, so you be able to add this
as a deployment option.

Let me know how it goes / if you need help getting familiar with the
architecture.

Cheers,

from cactus.

patrickbeeson avatar patrickbeeson commented on June 8, 2024

Great. I'll take a look. Thanks!

from cactus.

adamwintle avatar adamwintle commented on June 8, 2024

+1 for Github pages

from cactus.

stefanooldeman avatar stefanooldeman commented on June 8, 2024

dibs on Github pages. I'll be gladly looking into this and propose a pull request.

from cactus.

w4nderlust avatar w4nderlust commented on June 8, 2024

What do you think about ading a simple ftp deployment? With just host, username, password and destination directory

from cactus.

krallin avatar krallin commented on June 8, 2024

@w4nderlust ,

This should be rather easy to write as a deployment engine. If you're interested in working on this, just let me know, and I'll provide some tips to get you started.

Cheers,

from cactus.

w4nderlust avatar w4nderlust commented on June 8, 2024

Yes, give me some pointers and I'll try :)

from cactus.

krallin avatar krallin commented on June 8, 2024

@w4nderlust,

Basically, there are three things you need. I suggest you use the Rackspace examples here, they're probably the simplest:

https://github.com/koenbok/Cactus/blob/master/cactus/deployment/cloudfiles/

You need to:

Create a credentials manager. This basically is just an object that tells Cactus where and how to store Credentials. This is really trivial, yours should probably look like this:

class FTPCredentialsManager(BaseKeyringCredentialsManager):
    _username_config_entry = "ftp-username"
    _password_display_name = "FTP Password"
    _keyring_service = "cactus/ftp"

Next, create the deployment engine. This class should take care of all preparation work in the configure() method. In your case, this may be... nothing.

This should inherit from the BaseEngine defined here: https://github.com/koenbok/Cactus/blob/master/cactus/deployment/engine.py

The actual entrypoint called by Cactus is deploy(). This calls into the last thing you need to create, which is the file class. The file class is basically a class that should know how to deploy a given file. It should inherit from BaseFile.

There, you'll want to define do_upload and remote_changed (though the former can just return True unconditionally, but that wouldn't be ideal). Like the name implies, do_upload should upload your file.

You can pull in additional dependencies if needed. Just make sure you make them optional (look at the existing setup.py).

Let me know if you need further help,

Cheers,

from cactus.

 avatar commented on June 8, 2024

@w4nderlust are you still working on a ftp deployment engine?

from cactus.

w4nderlust avatar w4nderlust commented on June 8, 2024

I haven't started yet actually, I was thinking of doing it this week.

Il giorno 17/mag/2015, alle ore 21:27, pani-c [email protected] ha scritto:

@w4nderlust https://github.com/w4nderlust are you still working on a ftp deployment engine?


Reply to this email directly or view it on GitHub #80 (comment).

from cactus.

 avatar commented on June 8, 2024

Please leave a note if you're up to something ;-)

from cactus.

facconi avatar facconi commented on June 8, 2024

Hi everybody! Any news about a standard FTP deployment engine?

from cactus.

 avatar commented on June 8, 2024

I was looking into pysftp but had trouble with its dependencies :(

from cactus.

syllog1sm avatar syllog1sm commented on June 8, 2024

@krallin like this? syllog1sm@6e458b5

Doesn't complete any of the actual work yet. But the skeleton should be right, right?

Edit: It looks like there also needs to be CLI hooks for the deployment options? I can't figure out the entry point to these.

from cactus.

dwightgunning avatar dwightgunning commented on June 8, 2024

For a straight local file system deployment, I have raise PR #171.

from cactus.

Ollie-w avatar Ollie-w commented on June 8, 2024

How about Netlify? How would I deploy using that?

from cactus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.