Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • May 31 2018 15:31
    nschlemm starred cycloidio/cyclosible
  • Sep 06 2017 21:27
    sergioedo starred cycloidio/cyclosible
  • Jun 02 2016 02:38
    kellenr starred cycloidio/cyclosible
  • Apr 18 2016 18:45
  • Dec 28 2015 03:08
    ericson-cepeda starred cycloidio/cyclosible
  • Dec 23 2015 14:23

    Seraf on master

    fix(dev): Fixing serializer args (compare)

  • Dec 22 2015 10:07
    Seraf synchronize #17
  • Dec 22 2015 10:07

    Seraf on app_version

    Fixing serializers Removing mysqlclient. Fix #18 Bumping version to include the … and 3 more (compare)

  • Dec 22 2015 10:06

    Seraf on master

    Adding django 1.9 support and b… (compare)

  • Dec 22 2015 10:04
    auvipy commented #17
  • Dec 22 2015 10:03
    auvipy commented #18
  • Dec 22 2015 09:34
    Seraf commented #18
  • Dec 22 2015 09:33

    Seraf on master

    Bumping version to include the … (compare)

  • Dec 22 2015 09:32
    Seraf closed #18
  • Dec 22 2015 09:32

    Seraf on master

    Removing mysqlclient. Fix #18 (compare)

  • Dec 22 2015 09:27
    Seraf commented #18
  • Dec 22 2015 07:23
    auvipy opened #18
  • Dec 10 2015 11:35

    Seraf on app_version

    fix(usr): It's now possible to … (compare)

  • Dec 10 2015 11:35
    Seraf synchronize #17
  • Dec 09 2015 17:42
    Seraf commented #3
Julien Syx
@Seraf
Also, it may be interesting to remove the current system to replace all the auth/permission with oauth2 only
for standalone setup to include the oauth_provider into the app :)
Asif Saif Uddin
@auvipy
I see
Julien Syx
@Seraf
ok, the last master and cyclosible-0.3.3 support django1.9
Asif Saif Uddin
@auvipy
gr8
Julien Syx
@Seraf
also, if you want to help : I didn't took the time to do it but should be a great things : add test on the celery worker part
to know if the playbook has been well launched by the worker and if the callback is working correctly
that's almost 50% of the current cyclosible code that's not covered by tests
Asif Saif Uddin
@auvipy
good point
Julien Syx
@Seraf
oh, and of course, start from the master branch ;-)
Julien Syx
@Seraf
just to be sure I'm clear about the need of oauth : the goal is to have a provider that manage the permission in a centralized way, like a SSO/LDAP. I see the code to do to make a simple permission working with scopes, but I don't know how to manage a "per-object" permissions from the provider
Julien Syx
@Seraf
maybe a it could be interesting to remove django-guardian and use something like https://github.com/Helioscene/dry-rest-permissions to do some check on the object (the permission list will be retrieved from the provider)
Asif Saif Uddin
@auvipy
I see
but initialy u refused my suggestions about this :D
Julien Syx
@Seraf
Cause there wasn't oauth in the equation :)
Julien Syx
@Seraf
Django guardian fit well for basic object permissions what I needed.
Helioscene/dry-rest-permissions#9
Asif Saif Uddin
@auvipy
well how do you handle host? i want to run playbook against a specific host
Julien Syx
@Seraf
hello
with subsets
I patched this in my branch with app versionning. Let me cherry pick this one to the master ;)
Fixed in the 0.3.4 : cycloidio/cyclosible@09753a3
Asif Saif Uddin
@auvipy
how about having a hostgrup n hosts model
Julien Syx
@Seraf
I don't understand why you should want to do that ? It should be managed by your playbook/inventory, not really related to cyclosible
having cyclosible as a dynamic inventory for ansible is really not a wanted feature by now as we use only aws in our company, so ec2.py do the job and the playbook are using tags
It may be interesting in the future why not, but I don't want to add too much feature if the core isn't stabilized yet
Asif Saif Uddin
@auvipy
owh okey
Asif Saif Uddin
@auvipy
1 question
Julien Syx
@Seraf
Hello, yes ?
Asif Saif Uddin
@auvipy
is the present cyclosible capable of running standard playbooks?
Julien Syx
@Seraf
Yes it is :)
Asif Saif Uddin
@auvipy
I have been busy for official tasks so unable to ping u long :D
owh awesome :D
i will start work on the discussed topic after new year :D
Julien Syx
@Seraf
Nice :)
I'm currently using cyclosible to let our customers launch ansible with an api call when their jenkins build an artefact
Asif Saif Uddin
@auvipy
great :D
Asif Saif Uddin
@auvipy

ERROR/MainProcess] Received unregistered task of type u'Run a playbook'.
The message has been ignored and discarded.

Did you remember to import the module containing this task?
Or maybe you are using relative imports?
Please see http://bit.ly/gLye1c for more information.

The full contents of the message body was:
{u'utc': True, u'chord': None, u'args': [], u'retries': 0, u'expires': None, u'task': u'Run a playbook', u'callbacks': None, u'errbacks': None, u'timelimit': [None, None], u'taskset': None, u'kwargs': {u'subset': None, u'playbook_name': u'sipipchange', u'only_tags': None, u'extra_vars': None, u'skip_tags': None, u'user_name': u'aftnix'}, u'eta': None, u'id': u'67adf993-b10b-4b33-977f-98311220fd29'} (378b)
Traceback (most recent call last):
File "/home/aftnix/.local/lib/python2.7/site-packages/celery/worker/consumer.py", line 455, in on_task_received
strategies[name](message, body,
KeyError: u'Run a playbook'

[2015-12-30 12:11:13,204: INFO/MainProcess] Received task: Run a playbook[a77966b4-6b03-4d8d-94bc-2ea2f902a4c5]
[2015-12-30 12:11:13,230: ERROR/MainProcess] Task Run a playbook[a77966b4-6b03-4d8d-94bc-2ea2f902a4c5] raised unexpected: AnsibleError('Unable to find an inventory file, specify one with -i ?',)
Traceback (most recent call last):
File "/home/aftnix/.local/lib/python2.7/site-packages/celery/app/trace.py", line 240, in trace_task
R = retval = fun(args, kwargs)
File "/home/aftnix/.local/lib/python2.7/site-packages/celery/app/trace.py", line 438, in protected_call
return self.run(args,
kwargs)
File "/home/aftnix/src/smt/opsmonitor/playbook/tasks.py", line 77, in run_playbook
skip_tags=skip_tags
File "/home/aftnix/.local/lib/python2.7/site-packages/ansible/playbook/init.py", line 157, in init
self.inventory = ansible.inventory.Inventory(host_list)
File "/home/aftnix/.local/lib/python2.7/site-packages/ansible/inventory/init.py", line 139, in init
raise errors.AnsibleError("Unable to find an inventory file, specify one with -i ?")
AnsibleError: Unable to find an inventory file, specify one with -i ?
Julien Syx
@Seraf
You need to install and configure ansible on your own with a default inventory
Asif Saif Uddin
@auvipy
owh okey
Julien Syx
@Seraf
But may be interesting to pass an inventory as parameter. As I use aws I don't need this feature
Asif Saif Uddin
@auvipy
im = inventory.Inventory('/etc/ansible/hosts')
Runner(
module_name=module,
module_args=argument,
pattern=host_subset,
inventory=im,
forks=forks,
remote_user="root"
)
Julien Syx
@Seraf
That should be a parameter of the api to let the user provide differents inventory
Asif Saif Uddin
@auvipy
task = task_run_playbook.delay(
playbook_name=playbook.name,
user_name=request.user.username,
                    only_tags=only_tags,
                    skip_tags=skip_tags,
                    extra_vars=extra_vars,
                    subset=subset
                )
Julien Syx
@Seraf
Hi there
happy new year :)
Here some news : I'm currently testing anvilresearch/connect. It produces JWT token and I think I will go into this direction for cyclosible :)
Also, Ansible 2.0 has just been released. We will work on porting our playbook on this version but as the API is completely different, I will drop the support of ansible 1.9 to avoid a spaghetti code and all dirty things I had to do to support ansible 1.9 api :)
Asif Saif Uddin
@auvipy
good move seraf :D