I am completely new to Jenkins 2 pipelines. 

I had played with Jenkins 1 pipelines with the following view:

[![enter image description here](https://i.stack.imgur.com/nQpYh.png)](https://i.stack.imgur.com/nQpYh.png)

You could start a certain stage directly, let's say that I could choose to start running from the release stage, skipping Test.

I have a pretty simple Jenkins 2 pipeline definition:

```
stage('Preparation'){
    echo """
         Preparing
         something
         """
}
stage('Greeting') { 
    parallel 'hello1':{
        node{
            echo 'hello world 1'
        }
    }, 'hello2':{
        node{
            echo 'hello world 2'
        }
    }
}

```

In the pipeline page I have "Build now" which runs all stages starting from Preparation.

My questions are:

1. How can I run the stage I prefer? For instance Greeting instead of starting from Preparation?
2. How do you define the dependencies between stages? I mean the stage called after another one completes
3. Is there a way to limit the stages that a certain user can start? Imagine that I only want a specific user to launch the Greeting stage.
4. How do you setup manual stages?

**UPDATE:** The real goal behind my questions is the modelling of a **continuous delivery pipeline** like the following with **Jenkins 2 pipelines**:

```
Build stage --> AUTO --> Acceptance Stage --> MANUAL --> Production Stage
                                          --> MANUAL --> QA Stage

```

This is the behaviour I want:

**Build Stage** (any user can start it) when it finishes it triggers automatically the **Acceptance Stage**. This one can't be lauched manually, only automatically after succesfully finishing the Build Stage.

From **Acceptance Stage** I need that only authorized users can manually trigger **QA Stage** and **Production Stage**.

The business flow would be: a developer hits Build Stage, its code is built and packaged. Acceptance Stage begins, using the packaged code to run a bunch of automated tests.

At this point, when Acceptance Stage has finished OK, two things can happen:

1. Maybe QA Stage is needed to run more tests (Cucumber, manual, etc.). Some some authorized user would fire this stage.
2. When the product owner is happy, he can decice to launch the Production Stage to deploy the code in a production environment.

I am struggling to model this with Jenkins 2 pipelines.