Posted
over 7 years
ago
by
Jessica Field
The post OpenStack Election 2017: Vote for Kavit – OpenStack Events appeared first on Aptira Cloud Solutions.
|
Posted
over 7 years
ago
by
Sakari Keskitalo
Helsinki, Finland & London, UK – January 9th 2017 – Codership, whose Galera Cluster technology brings high availability (HA) and scalability to open source databases worldwide, has seen its technology break the one million download barrier.
... [More]
Codership’s customer roster has grown over 100 percent thanks to the adoption of OpenStack by enterprises and the recent […] [Less]
|
Posted
over 7 years
ago
by
Doug Smith
Stackanetes is an open-source project that aims to run OpenStack on top of Kubernetes. Today we’re going to use a project that I created that uses ansible plays to setup Stackanetes on Openshift, openshift-stackanetes. We’ll use an all-in-one server
... [More]
approach to setting up openshift in this article to simplify that aspect, and later provide playbooks to launch Stackanetes with a cluster and focus on HA requirements in the future.
[Less]
|
Posted
over 7 years
ago
by
amrith
There are numerous blogs and resources for the new and aspiring OpenStack contributor, providing tips, listing what to do. Here are seven things to avoid if you want to be an effective OpenStack contributor. I wrote one of these. There have been
... [More]
presentations at summits that share other useful newbie tips as well, here is … Continue reading "Effective OpenStack contribution: Seven things to avoid at all cost"
[Less]
|
Posted
over 7 years
ago
by
Kendall Nelson
The bumpy road to contribution and how smooth it over from the OpenStack Foundation's Kendall Nelson.
The post Why do we open source again? appeared first on OpenStack Superuser.
|
Posted
over 7 years
ago
by
Tim Bell
|
Posted
over 7 years
ago
by
Dougal Matthews
When writing a Mistral workflow it is common that you want to add a condition
to a specific task. For example, you only want to run a task if the user
provided a specific input to the workflow. I found this counter intuitive at
first and have since explained it …
|
Posted
over 7 years
ago
by
Dougal Matthews
When writing a Mistral workflow it is common that you want to add a condition
to a specific task. For example, you only want to run a task if the user
provided a specific input to the workflow. I found this counter intuitive at
first and have since
... [More]
explained it to a few people, so I wanted to document it
for the future.
As a contrived example, we want a workflow that returns "x is true" if we
pass the x input or "x is not true" if it isn't passed (or false is passed).
As a Pythonista, I wanted to solve the problem with something equivalent to
this short Python code. It's just a simple if/else after all.
def workflow(x=False):
if x:
return "x is true"
else:
return "x is not true"
In Mistral's Workflow DSL you need to think about it a little differently.
my_workflow:
input:
- x: false
tasks:
task_switch:
on-success:
task_a:
task_b:
task_a:
action: std.echo output="x is true"
task_b:
action: std.echo output="x is not true"
In this workflow we have two tasks, task_a and task_b, they perform the
different outcomes we want. The logic that switches between them becomes a task
of it's own. The task task_switch doesn't specify an action or workflow to
run, this means that it performs a std.noop. On the success of this, which
should always happen, we then use a mapping of tasks and conditions (in the
on-success attribute) to specify what happens next. task_a and task_b are
the tasks and on the right of these we have the YAQL expression which is
evaluated to determine if they run. If their result is truthy, that task will
be scheduled for execution.
In our case, if I run the workflow with x=true, then it will evaluate to the
following and only task_a will be executed.:
on-success:
task_a: true
task_b: false
This then becomes something like a switch statement, however, unlike a switch
statement in most languages, multiple tasks and workflow paths can be followed
rather than the first that turns out to be true.
Here is a slightly more complicated workflow that shows multiple tasks being
called depending on the input.
my_workflow:
input:
- letter
tasks:
task_switch:
on-success:
letter_a:
letter_a_or_b:
letter_other:
letter_a:
action: std.echo output="letter is a"
letter_a_or_b:
action: std.echo output="letter a or b"
letter_other:
action: std.echo output="letter is not a or b"
Input 'a' means tasks letter_a and letter_a_or_b are executed. Input 'b'
means that only letter_a_or_b is executed and any other input would execute
the letter_other command.
As mentioned before, these examples are contrived, but they can be quite useful
when used in larger workflows to control the flow or provide some simple
validation.
[Less]
|
Posted
over 7 years
ago
by
Joseph George
In thinking about the OpenStack community, our approach to the project going forward, and the upcoming Board elections, I’m reminded of a specific hand of the poker game Texas Hold ‘Em I observed a few years back between two players. As one
... [More]
particular hand began, both players had similar chip stacks, and were each dealt …
+read more
The post Running for the OpenStack Board: “All In” on OpenStack appeared first on SUSE Blog. Joseph George
[Less]
|
Posted
over 7 years
ago
by
amrith
Since my first OpenStack Summit in Atlanta (mid 2014), I have been to a number of OpenStack-related events, meetups, and summits. And at every one of these events, as well as numerous customer and prospect meetings, I’ve been asked some variant of
... [More]
the question: Isn’t Trove insecure because the guestagent has RabbitMQ credentials? A bug … Continue reading "Addressing a common misconception regarding OpenStack Trove security"
[Less]
|