Skip to content

Commit

Permalink
Merge pull request #518 from ditrit/improvement/update_plugin-core
Browse files Browse the repository at this point in the history
Improvement: update plugin-core to version 0.24.1
  • Loading branch information
Zorin95670 authored Jul 1, 2024
2 parents e0a79af + 3b8c622 commit 0cd8a74
Show file tree
Hide file tree
Showing 34 changed files with 4,770 additions and 4,718 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,8 @@ jobs:
run: |
npm install -g [email protected] && \
npm ci && \
npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.2" && \
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.0" && \
npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.3" && \
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.1" && \
npm run plugin:init && \
docker build -t leto-modelizer -f DockerfileE2E .
- name: Run application
Expand Down
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@ To run all the e2e tests, you need to run the application with ALL official plug

```bash
npm ci
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.0"
npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.2"
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.1"
npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.3"
npm run plugin:init
TEMPLATE_LIBRARY_BASE_URL="https://raw.githubusercontent.com/ditrit/leto-modelizer-templates-library/leto-modelizer/e2e_test" npm run dev
```
Expand All @@ -66,7 +66,7 @@ TEMPLATE_LIBRARY_BASE_URL="https://raw.githubusercontent.com/ditrit/leto-modeliz

```bash
npm ci
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.0"
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.1"
npm run plugin:init
```

Expand Down
5 changes: 3 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@ RUN npm install
FROM develop-stage as build-stage
ARG proxy_url
WORKDIR /app
RUN npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.0"
RUN npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.2"
RUN npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.1"
RUN npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.3"
RUN npm run plugin:install -- repository-name="kubernator-plugin" repository-url="https://github.com/ditrit/kubernator-plugin.git#0.1.0"
RUN npm run plugin:init
RUN npm run build

Expand Down
34 changes: 23 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,26 +50,27 @@ For now, we don't have many plugins to offer you, but follow us and in the next

Plugin to manage terraform files, by default it comes with aws provider definition.

[GitHub url](https://github.com/ditrit/terrator-plugin#0.8.0)
[GitHub url](https://github.com/ditrit/terrator-plugin#0.8.1)

### Github plugin

Plugin to manage github action files.

[GitHub url](https://github.com/ditrit/githubator-plugin#0.3.2)
[GitHub url](https://github.com/ditrit/githubator-plugin#0.3.3)

## Compatibility versions table

<table>
<thead>
<tr>
<th rowspan="2">Leto-modelizer</th>
<th colspan="3">Supported version</th>
<th colspan="4">Supported version</th>
</tr>
<tr>
<th>Plugin-core</th>
<th>Terrator-plugin</th>
<th>Githubator-plugin</th>
<th>kubernator-plugin</th>
</tr>
</thead>
<tbody>
Expand All @@ -78,30 +79,35 @@ Plugin to manage github action files.
<td>= 0.13.0<br>= 0.14.0</br></td>
<td>= 0.1.12</td>
<td>🚫</td>
<td>🚫</td>
</tr>
<tr>
<td>1.1.0</td>
<td>= 0.15.2</td>
<td>= 0.2.0</td>
<td>= 0.1.1</td>
<td>🚫</td>
</tr>
<tr>
<td>1.2.0</td>
<td>= 0.16.0</td>
<td>= 0.3.0</td>
<td>= 0.2.0</td>
<td>🚫</td>
</tr>
<tr>
<td>1.3.0</td>
<td>= 0.21.0</td>
<td>= 0.7.0</td>
<td>= 0.2.5</td>
<td>🚫</td>
</tr>
<tr>
<td>next version</td>
<td>= 0.23.0</td>
<td>= 0.8.0</td>
<td>= 0.24.1</td>
<td>= 0.8.1</td>
<td>= 0.3.3</td>
<td>= 0.1.0</td>
</tr>
</tbody>
</table>
Expand Down Expand Up @@ -132,23 +138,29 @@ Choose __Custom plugin__ to install a specific plugin not referenced as an offic
![](docs/plugin-install-custom.gif)

Examples with official plugins:
- terrator-plugin:
- terrator-plugin:
- plugin name: `terrator-plugin`
- git repository url: `https://github.com/ditrit/terrator-plugin.git#0.8.0`
- githubator-plugin:
- git repository url: `https://github.com/ditrit/terrator-plugin.git#0.8.1`
- githubator-plugin:
- plugin name: `githubator-plugin`
- git repository url: `https://github.com/ditrit/githubator-plugin.git#0.3.2`
- git repository url: `https://github.com/ditrit/githubator-plugin.git#0.3.3`
- kubernator-plugin:
- plugin name: `kubernator-plugin`
- git repository url: `https://github.com/ditrit/kubernator-plugin.git#0.1.0`

### Install custom plugin in command line

Options `repository-name` and `repository-url` can be added with the `npm run plugin:install` command to bypass cli prompts.

```bash
# Example with terraform plugin
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.0"
npm run plugin:install -- repository-name="terrator-plugin" repository-url="https://github.com/ditrit/terrator-plugin.git#0.8.1"

# Example with github action plugin
npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.2"
npm run plugin:install -- repository-name="githubator-plugin" repository-url="https://github.com/ditrit/githubator-plugin.git#0.3.3"

# Example with kubernator plugin
npm run plugin:install -- repository-name="kubernator-plugin" repository-url="https://github.com/ditrit/kubernator-plugin.git#0.1.0"
```

Now that your plugin is installed, you can continue to install other plugins with the same command if you want.
Expand Down
11 changes: 6 additions & 5 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed

* Improve file explorer tree updating when file contents are updated.
* Improve performance of the automatic functionnal tests.
* Improve performance of the automatic functional tests.
* Improve unit tests coverage.
* Technical content:
* Update import of vue components.
* Plugin management:
* Work with [plugin-core](https://github.com/ditrit/leto-modelizer-plugin-core/tree/0.23.0) version 0.23.0.
* Work with [terrator-plugin](https://github.com/ditrit/terrator-plugin/tree/0.8.0) version 0.8.0.
* Work with [githubator-plugin](https://github.com/ditrit/githubator-plugin/tree/0.3.1) version 0.3.1.
* Work with [plugin-core](https://github.com/ditrit/leto-modelizer-plugin-core/tree/0.24.1) version 0.24.1.
* Work with [terrator-plugin](https://github.com/ditrit/terrator-plugin/tree/0.8.1) version 0.8.1.
* Work with [githubator-plugin](https://github.com/ditrit/githubator-plugin/tree/0.3.3) version 0.3.3.
* Work with [kubernator-plugin](https://github.com/ditrit/kubernator-plugin/tree/0.1.0) version 0.1.0.
* Improve performance on git add.
* Replace OIDC authentication by Leto-Modelizer-Api, see [this issue](https://github.com/ditrit/leto-modelizer/issues/425).
* Separating git-related functions into a dedicated composable.
* Merge add/create diagram buttons into a drop down button, see [this issue](https://github.com/ditrit/leto-modelizer/issues/471).
* Merge add/create diagram buttons into a drop-down button, see [this issue](https://github.com/ditrit/leto-modelizer/issues/471).
* Improve Authentication by re-doing login process if the token is expired, see [this issue](https://github.com/ditrit/leto-modelizer/issues/478).
* Handle external id.
* Replaced old authentication (Parse) by the new LetoModelizeApi (Java/Spring).
Expand Down
2 changes: 1 addition & 1 deletion cypress/e2e/Bugfix/Issue377.feature
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Feature: Fix issue #370: Unable to create and use diagram on root folder.
When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I click on '[data-cy="component-definition_aws"]'
Then I expect '[data-cy="draw-container"]' exists
And I expect '[id^="id_1"]' exists
And I expect '[class^="id_1 component"]' exists

# Go to text view
When I click on '[data-cy="modelizer-switch-button"] [aria-pressed="false"]'
Expand Down
45 changes: 20 additions & 25 deletions cypress/e2e/Bugfix/Issue390.feature
Original file line number Diff line number Diff line change
Expand Up @@ -27,37 +27,32 @@ Feature: Fix issue #390: (Link|Reference)Input options are not updated
When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I click on '[data-cy="component-definition_aws_route53_zone"]'
And I click on '[data-cy="component-definition_aws_route53_record"]'
Then I expect '[id^="id_1"]' appear 1 time on screen
And I expect '[id^="id_2"]' appear 1 time on screen
Then I expect '[class^="id_1 component"]' appear 1 time on screen
And I expect '[class^="id_2 component"]' appear 1 time on screen

# Check only one link option exists
When I click on '[id="id_1"]'
Then I expect '[data-cy="object-details-panel"]' exists
And I expect '[data-cy="link-input_records"]' exists
# Check only one link to component option exists
When I click on '.id_1.component .menu-button'
Then I expect '[data-cy="add-link-button"]' exists

When I click on '[data-cy="link-input_records"]'
Then I expect '[class="q-item__label"]' appear 1 time on screen
When I click on '[data-cy="add-link-button"]'
Then I expect '[data-cy="link-to-component-id_2-button"]' exists
And I click on '[data-cy="link-to-component-id_2-button"]'

# Create second link option
When I click on '[data-cy="component-definition_aws_route53_record"]'
Then I expect '[id^="id_2"]' appear 1 time on screen
Then I expect '[class^="id_2 component"]' appear 1 time on screen
And I expect '[class^="id_3 component"]' appear 1 time on screen

# Check two link options exist
When I click on '[data-cy="link-input_records"]'
Then I expect '[class="q-item__label"]' appear 2 times on screen
When I click on '.id_1.component .menu-button'
Then I expect '[data-cy="add-link-button"]' exists

# Check only one ref option exists
When I click on '[id="id_2"]'
Then I expect '[data-cy="object-details-panel"]' exists
And I expect '[data-cy="ref-input_zone_id"]' exists

When I click on '[data-cy="ref-input_zone_id"]'
Then I expect '[class="q-item__label"]' appear 1 time on screen

# Create second link option
When I click on '[data-cy="component-definition_aws_route53_zone"]'
Then I expect '[id^="id_1"]' appear 1 time on screen
When I click on '[data-cy="add-link-button"]'
Then I expect '[data-cy="link-to-component-id_2-button"]' exists
And I expect '[data-cy="link-to-component-id_3-button"]' exists
And I click on '[data-cy="link-to-component-id_2-button"]'

# Check two link options exist
When I click on '[data-cy="ref-input_zone_id"]'
Then I expect '[class="q-item__label"]' appear 2 times on screen
# Check only one ref option exists
When I click on '.id_1.component .menu-button'
And I click on '[data-cy="add-link-button"]'
Then I expect '[data-cy="link-to-definition-aws_route53_record-button"]' exists
4 changes: 2 additions & 2 deletions cypress/e2e/Bugfix/Issue407.feature
Original file line number Diff line number Diff line change
Expand Up @@ -26,5 +26,5 @@ Feature: Fix issue #407: Click on component definition from palette causes error
Then I expect '[data-cy="component-definition_workflow"]' exists

When I click on '[data-cy="component-definition_workflow"]'
Then I expect '[data-cy="draw-container"] [id^="id_1"]' exists
And I expect '[data-cy="draw-container"] [id^="id_1"]' appear 1 time on screen
Then I expect '.id_1.component' exists
And I expect '.id_1.component' appear 1 time on screen
12 changes: 5 additions & 7 deletions cypress/e2e/Bugfix/Issue474.feature
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,8 @@ Feature: Fix issue #474: Delete last component of model file, the file is delete
When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I wait 1 second
And I click on '[data-cy="component-definition_server"]'
And I wait 2 seconds
Then I expect '[data-cy="draw-container"]' exists
And I wait 1 second
And I expect '[id^="id_1"]' exists
Then I expect '.id_1.component' exists

# Check project folders and files are created in Text view
When I click on '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="false"]'
Expand All @@ -44,13 +42,13 @@ Feature: Fix issue #474: Delete last component of model file, the file is delete
And I wait 1 second
Then I expect current url is 'projectName/modelizer/draw\?plugin=terrator-plugin&path='

When I click on '[data-cy="draw-container"] [id^="id_1"]'
When I click on '.id_1.component .menu-button'
And I wait 1 second
Then I expect '[id^="remove-component"]' exists
Then I expect '[data-cy="delete-button"]' exists

When I force click on '[id^="remove-component"]'
When I click on '[data-cy="delete-button"]'
And I wait 1 second
Then I expect '[data-cy="draw-container"] [id^="id_1"]' not exists
Then I expect '.id_1.component' not exists

# Go to Text view and check default file exists
When I click on '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="false"]'
Expand Down
1 change: 1 addition & 0 deletions cypress/e2e/DiagramsPage/CreateDiagram.feature
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
@skip
Feature: Test diagrams page: diagram creation

Scenario: Create model on diagrams page should redirect to draw page with correct plugin and create model folders
Expand Down
4 changes: 3 additions & 1 deletion cypress/e2e/DiagramsPage/DeleteDiagrams.feature
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
@skip
Feature: Test diagrams page: delete diagram

Scenario: Should delete diagram
Given I clear cache
And I set viewport size to '1920' px for width and '1080' px for height
Expand Down Expand Up @@ -28,7 +30,7 @@ Feature: Test diagrams page: delete diagram
When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I click on '[data-cy="component-definition_aws"]'
Then I expect '[data-cy="draw-container"]' exists
And I expect '[id^="id_1"]' exists
And I expect '.id_1.component' exists

# Back to the diagrams page
When I visit the '/projects/{{ projectName }}/diagrams'
Expand Down
7 changes: 2 additions & 5 deletions cypress/e2e/DiagramsPage/DisplayDiagrams.feature
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,7 @@ Feature: Test diagrams page: display all diagrams

When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I click on '[data-cy="component-definition_aws"]'
Then I expect '[data-cy="draw-container"]' exists
And I expect '[id^="id_1"]' exists
Then I expect '.id_1.component' exists

# Back to the models page
When I click on '[data-cy="models-page-link-button"]'
Expand All @@ -50,9 +49,7 @@ Feature: Test diagrams page: display all diagrams

When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I click on '[data-cy="component-definition_aws"]'
And I wait 2 seconds
Then I expect '[data-cy="draw-container"]' exists
And I expect '[id^="id_1"]' exists
Then I expect '.id_1.component' exists

# Back to the models page
When I visit the '/projects/{{ projectName }}/diagrams'
Expand Down
3 changes: 1 addition & 2 deletions cypress/e2e/DiagramsPage/FocusMovementDiagrams.feature
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,7 @@ Feature: Test diagrams page: move all diagrams

When I click on '[data-cy="component-definitions-item_terrator-plugin"]'
And I click on '[data-cy="component-definition_aws"]'
Then I expect '[data-cy="draw-container"]' exists
And I expect '[id^="id_1"]' exists
Then I expect '.id_1.component' exists

# Back to the diagrams page
When I visit the '/projects/{{ projectName }}/diagrams'
Expand Down
18 changes: 9 additions & 9 deletions cypress/e2e/ModelizerPage/SwitchView/AddComponent.feature
Original file line number Diff line number Diff line change
Expand Up @@ -71,18 +71,18 @@ Feature: Test switch model to text view: add component/link
And I click on '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="false"]'
And I wait 1 second
Then I expect '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="true"] [class="block"]' is 'Draw'
And I expect '[id^="id_1"]' exists
But I expect '[id^="id_2"]' not exists
And I expect '.id_1.component' exists
But I expect '.id_2.component' not exists

Scenario: Link two components (Draw view) should update plugin file content with new attributes properties (Text view)
When I click on '[data-cy="component-definition_aws_subnet"]'
And I wait 1 second
And I click on '[data-cy="component-definition_aws_internet_gateway"]'
And I wait 1 second
And I click on '[id^="id_1"]'
And I click on '[id="create-link"]'
And I click on '[id^="id_2"]'
Then I expect '[class="link"]' exists
And I click on '.id_1.component .menu-button'
And I click on '[data-cy="add-link-button"]'
And I click on '[data-cy="link-to-component-id_2-button"]'
Then I expect '.id_1_to_id_2.link' exists

When I click on '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="false"]'
And I wait 1 second
Expand Down Expand Up @@ -116,6 +116,6 @@ Feature: Test switch model to text view: add component/link
And I click on '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="false"]'
Then I expect '[data-cy="navigation-bar"] [data-cy="modelizer-switch-button"] [aria-pressed="true"] [class="block"]' is 'Draw'
And I wait 1 second
And I expect '[id^="id_1"]' exists
And I expect '[id^="id_2"]' exists
And I expect '[class="link"]' exists
And I expect '.id_1.component' exists
And I expect '.id_2.component' exists
And I expect '.id_2_to_id_1.link' exists
Loading

0 comments on commit 0cd8a74

Please sign in to comment.