Skip to content

Commit

Permalink
work for issue elastic#379 - adding back rpm and deb tests (elastic#439)
Browse files Browse the repository at this point in the history
* adding back rpm and deb tests

* arbitrary change to trigger ci tests

* fix linting

* fixing more linting

* fully exploring gherkin linting apparently

* final linting fix

* updating ci suites to match new tags

* reset indention w feedback passes linting locally

* adding skip support and skipping rpm and deb tests

* back to fixing linting for tags now

Co-authored-by: Manuel de la Peña <mdelapenya@gmail.com>
  • Loading branch information
EricDavisX and mdelapenya committed Dec 2, 2020
1 parent 58777f2 commit 973953e
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 43 deletions.
6 changes: 3 additions & 3 deletions .ci/.e2e-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ SUITES:
- suite: "helm"
tags: "metricbeat"
- suite: "fleet"
tags: "agent_endpoint_integration"
tags: "agent_endpoint_integration && ~skip"
- suite: "fleet"
tags: "stand_alone_mode"
tags: "stand_alone_agent && ~skip"
- suite: "fleet"
tags: "fleet_mode"
tags: "fleet_mode_agent && ~skip"
- suite: "metricbeat"
tags: "integrations && apache"
- suite: "metricbeat"
Expand Down
91 changes: 52 additions & 39 deletions e2e/_suites/fleet/features/fleet_mode_agent.feature
Original file line number Diff line number Diff line change
@@ -1,101 +1,114 @@
@fleet_mode
@fleet_mode_agent
Feature: Fleet Mode Agent
Scenarios for the Agent in Fleet mode connecting to Fleet application.

@enroll
@install
Scenario Outline: Deploying the <os> agent
When a "<os>" agent is deployed to Fleet with "<installer>" installer
Then the "elastic-agent" process is in the "started" state on the host
And the "filebeat" process is in the "started" state on the host
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the "elastic-agent" process is in the "started" state on the host
Then the "filebeat" process is in the "started" state on the host
And the "metricbeat" process is in the "started" state on the host
And the agent is listed in Fleet as "online"
And system package dashboards are listed in Fleet
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@skip // reset the following tag when unskipping: enroll
Scenario Outline: Deploying the <os> agent with enroll and then run on rpm and deb
Given a "<os>" agent is deployed to Fleet with "systemd" installer
When the "elastic-agent" process is in the "started" state on the host
Then the "filebeat" process is in the "started" state on the host
And the "metricbeat" process is in the "started" state on the host
And the agent is listed in Fleet as "online"
And system package dashboards are listed in Fleet
Examples:
| os |
| centos |
| debian |

@stop-agent
Scenario Outline: Stopping the <os> agent stops backend processes
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the "elastic-agent" process is "stopped" on the host
Then the "filebeat" process is in the "stopped" state on the host
And the "metricbeat" process is in the "stopped" state on the host
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@restart-agent
Scenario Outline: Restarting the installed <os> agent
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the "elastic-agent" process is "restarted" on the host
And the "filebeat" process is in the "started" state on the host
Then the "filebeat" process is in the "started" state on the host
And the "metricbeat" process is in the "started" state on the host
And the agent is listed in Fleet as "online"
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@restart-host
Scenario Outline: Restarting the <os> host with persistent agent restarts backend processes
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the host is restarted
Then the "elastic-agent" process is in the "started" state on the host
And the "filebeat" process is in the "started" state on the host
And the "metricbeat" process is in the "started" state on the host
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@unenroll
Scenario Outline: Un-enrolling the <os> agent
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the agent is un-enrolled
Then the "elastic-agent" process is in the "started" state on the host
And the agent is listed in Fleet as "inactive"
And the "filebeat" process is in the "stopped" state on the host
And the "metricbeat" process is in the "stopped" state on the host
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@reenroll
Scenario Outline: Re-enrolling the <os> agent
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
And the agent is un-enrolled
And the "elastic-agent" process is "stopped" on the host
When the agent is re-enrolled on the host
And the "elastic-agent" process is "started" on the host
Then the agent is listed in Fleet as "online"
Then the "elastic-agent" process is "started" on the host
And the agent is listed in Fleet as "online"
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@revoke-token
Scenario Outline: Revoking the enrollment token for the <os> agent
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the enrollment token is revoked
Then an attempt to enroll a new agent fails
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |

@uninstall-host
Scenario Outline: Un-installing the installed <os> agent
Given a "<os>" agent is deployed to Fleet with "<installer>" installer
Given a "<os>" agent is deployed to Fleet with "tar" installer
When the "elastic-agent" process is "uninstalled" on the host
Then the "elastic-agent" process is in the "stopped" state on the host
And the "filebeat" process is in the "stopped" state on the host
And the "metricbeat" process is in the "stopped" state on the host
And the file system Agent folder is empty
And the agent is listed in Fleet as "offline"
Examples:
| os | installer |
| centos | tar |
| debian | tar |
| os |
| centos |
| debian |
2 changes: 1 addition & 1 deletion e2e/_suites/fleet/features/stand_alone_agent.feature
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
@stand_alone_mode
@stand_alone_agent
Feature: Stand-alone Agent
Scenarios for a standalone mode Elastic Agent in Fleet, where an Elasticseach
and a Kibana instances are already provisioned, so that the Agent is able to communicate
Expand Down

0 comments on commit 973953e

Please sign in to comment.