Skip to content

Commit

Permalink
Merge branch 'rundeck:main' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
carlosrfranco committed Mar 19, 2024
2 parents a91e3ef + 1b0c94f commit ffcea21
Show file tree
Hide file tree
Showing 973 changed files with 71,439 additions and 57,406 deletions.
13 changes: 0 additions & 13 deletions .circleci/Makefile
Expand Up @@ -28,19 +28,6 @@ rundeck-build: create-caches
-e SLACK_ACCESS_TOKEN=$(SLACK_ACCESS_TOKEN) \
-v circleci-local-gradle-cache:/home/circleci/.gradle:rw

twistlock-scan:
circleci local execute "Twistlock Scan Preview" \
-e CIRCLE_LOCAL_BUILD=true \
-e SLACK_ACCESS_TOKEN=$(SLACK_ACCESS_TOKEN) \
-e DOCKER_USERNAME=$(DOCKER_USERNAME) \
-e DOCKER_PASSWORD=$(DOCKER_PASSWORD) \
-e DOCKER_REPO=$(DOCKER_REPO) \
-e DOCKER_CI_REPO=$(DOCKER_CI_REPO) \
-e TL_USER=$(TL_USER) \
-e TL_PASS=$(TL_PASS) \
-e TL_CONSOLE_URL=$(TL_CONSOLE_URL)


ansible-test:
circleci local execute "Ansible Test" \
-e CIRCLE_LOCAL_BUILD=true \
Expand Down
9 changes: 0 additions & 9 deletions .circleci/README.md
Expand Up @@ -57,10 +57,6 @@ DOCKER_PASSWORD=your-docker-key
# Override repositories (optional)
DOCKER_REPO=ahormazabal/rdimg
DOCKER_CI_REPO=ahormazabal/rdci
# Twistlock credentials (for rinning twistlock scan)
TL_USER=circleci-rundeck
TL_PASS=the-twistlock-console-password
TL_CONSOLE_URL=https://the.twistlock.console.url
# GPG credentials (for packaging tasks)
RUNDECK_SIGNING_PASSWORD=gpg_signing_key_password
RUNDECK_SIGNING_KEYID=gpg_signing_key_id
Expand Down Expand Up @@ -96,11 +92,6 @@ As of this writing, the following jobs are available to run locally. Execute the
make -f .circleci/Makefile rundeck-build
```

#### Twistlock scan
```shell
make -f .circleci/Makefile twistlock-scan
```

#### Ansible Test
```shell
make -f .circleci/Makefile ansible-test
Expand Down
90 changes: 19 additions & 71 deletions .circleci/config.yml
Expand Up @@ -87,7 +87,7 @@ executors:
# Machine executor
machine-builder:
machine:
image: ubuntu-2204:2023.10.1
image: default
docker_layer_caching: << parameters.docker_layer_caching >>
parameters:
resource_class:
Expand All @@ -114,7 +114,6 @@ commands:
steps:
- setup_remote_docker:
docker_layer_caching: << parameters.docker_layer_caching >>
version: 20.10.14

# Due to circleci cli limitations, we need this workaround in order to run
# the docker command as root on local builds, without running everything as root.
Expand Down Expand Up @@ -295,8 +294,8 @@ jobs:
- collect-gradle-tests
- save-build-cache

# Run twistlock scan
twistlock-scan-image:
# WizCLI Image Scan
wizcli-scan:
<<: *job-defaults
executor:
name: docker-builder
Expand All @@ -309,13 +308,13 @@ jobs:
- setup_docker
- checkout
- run-build-step:
step-name: Install Twistlock
command: install_twistcli
step-name: Install WizCLI
command: install_wizcli
- run-build-step:
step-name: Scan Image
command: twistlock_scan || << parameters.continue >>
command: wizcli_scan || << parameters.continue >>
- store_artifacts:
path: ~/workspace/twistlock_scan_result.json
path: ~/workspace/wizcli_scan_result.json
- store_test_results:
path: test-results

Expand Down Expand Up @@ -463,8 +462,7 @@ jobs:
description: Command that will execute the docker tests
type: string
steps:
- setup_docker:
docker_layer_caching: true
- setup_docker
- checkout
- install-testdeck-dependencies
- attach_workspace:
Expand Down Expand Up @@ -505,68 +503,22 @@ jobs:
command: << parameters.command >>


# Run Testdeck job on machine executor.
testdeck:
<<: *job-defaults
executor:
name: machine-builder
docker_layer_caching: true
resource_class: << parameters.resource_class >>

parameters:
resource_class:
type: string
default: medium
workdir:
description: Working directory
type: string
default: .
command:
description: Command that will execute the docker tests
type: string

steps:

- checkout
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- install-testdeck-dependencies
- attach_workspace:
at: ~/workspace
- run-build-step:
step-name: Pull Rundeck Image
command: rundeck_pull_image
- run-build-step:
step-name: Test
command: |
cd << parameters.workdir >>
./bin/deck bootstrap
<< parameters.command >>
- run-build-step:
step-name: Print Logs
when: always
command: |
cd << parameters.workdir >>
./bin/deck cluster logs
- store_artifacts:
path: << parameters.workdir >>/test_out/images
destination: images
- store_test_results:
path: << parameters.workdir >>/test_out

test-gradle-functional:
<<: *job-defaults
executor:
name: machine-builder
docker_layer_caching: true
resource_class: medium
resource_class: << parameters.resource_class >>
parameters:
test-image:
description: Test image tag
default: "rundeck/testdeck"
type: string
gradle-task:
type: string
resource_class:
type: string
default: medium
steps:
- checkout
- install-build-dependencies
Expand Down Expand Up @@ -672,19 +624,19 @@ workflows:
name: Test Packaging
<<: *require-build
<<: *slack-defaults
- twistlock-scan-image:
name: Twistlock Scan Preview
- wizcli-scan:
name: WizCLI Scan Preview
<<: *require-build
continue: true
context:
- tl_scan_context
- WizCLI
filters:
branches: { ignore: main }
- twistlock-scan-image:
name: Twistlock Scan
- wizcli-scan:
name: WizCLI Scan
continue: false
context:
- tl_scan_context
- WizCLI
- slack-secrets
filters:
branches: { only: main }
Expand All @@ -695,11 +647,6 @@ workflows:
command: bash test/run-docker-tests.sh
<<: *require-build
<<: *slack-defaults
- test-machine:
name: API Test
command: DOCKER_COMPOSE_SPEC=docker-compose-api-mysql.yaml bash test/run-docker-api-tests.sh
<<: *require-build
<<: *slack-defaults
- test-docker:
name: SSL Test
command: bash test/run-docker-ssl-tests.sh
Expand Down Expand Up @@ -733,6 +680,7 @@ workflows:
- test-gradle-functional:
name: New Selenium Test
gradle-task: seleniumCoreTest
resource_class: large
<<: *require-build
<<: *slack-defaults
- test-gradle-functional:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/backport.yml
Expand Up @@ -16,7 +16,7 @@ jobs:
)
steps:
- name: Backport Action
uses: sqren/backport-github-action@v8.9.3
uses: sorenlouv/backport-github-action@v9.3.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
auto_backport_label_prefix: 'backport-to-'
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Expand Up @@ -11,7 +11,7 @@
*.iml
/db/
/lib/
/bin/
**/*/bin/
**/node_modules
**/build
**/*/build
Expand Down
2 changes: 1 addition & 1 deletion build.yaml
Expand Up @@ -7,4 +7,4 @@ rundeck:
- "com.github.rundeck-plugins:openssh-node-execution:2.0.2"
- "com.github.rundeck-plugins:multiline-regex-datacapture-filter:1.1.0"
- "com.github.rundeck-plugins:attribute-match-node-enhancer:v0.1.5"
- "com.github.rundeck-plugins:sshj-plugin:v0.1.10"
- "com.github.rundeck-plugins:sshj-plugin:v0.1.11"
3 changes: 2 additions & 1 deletion core/build.gradle
Expand Up @@ -57,7 +57,7 @@ dependencies {
api project(":rundeck-authz:rundeck-authz-core")
api project(":rundeck-authz:rundeck-authz-yaml")

api "org.rundeck:rundeck-data-models:1.0.1"
api "org.rundeck:rundeck-data-models:1.0.3"

api ('com.google.guava:guava:32.0.1-jre') {
exclude group:'org.codehaus.mojo', module: 'animal-sniffer-annotations'
Expand Down Expand Up @@ -93,6 +93,7 @@ dependencies {
"org.yaml:snakeyaml:${snakeyamlVersion}",
'com.squareup.retrofit2:retrofit:2.9.0',
'com.squareup.retrofit2:converter-jackson:2.9.0',
'com.squareup.retrofit2:converter-jaxb:2.9.0',
'javax.servlet:javax.servlet-api:4.0.1'


Expand Down
Expand Up @@ -336,6 +336,7 @@ public static class RundeckWebConfig {

Cookie cookie;
Jetty jetty;
WebLogging logging;

@Data
public static class Cookie {
Expand All @@ -356,6 +357,10 @@ public static class Servlet {
}
}

@Data
public static class WebLogging {
List<String> ignorePrefixes;
}
@Data
public static class RundeckNodeServiceConfig {

Expand Down
4 changes: 3 additions & 1 deletion core/src/main/java/com/dtolabs/rundeck/core/event/Event.java
@@ -1,7 +1,9 @@
package com.dtolabs.rundeck.core.event;


public interface Event {
import org.rundeck.app.data.model.v1.storedevent.StoredEventData;

public interface Event extends StoredEventData {
String getProjectName();
String getSubsystem();
String getTopic();
Expand Down
10 changes: 10 additions & 0 deletions core/src/main/java/com/dtolabs/rundeck/core/event/EventImpl.java
@@ -1,6 +1,10 @@
package com.dtolabs.rundeck.core.event;

import lombok.Data;
import org.rundeck.app.data.model.v1.storedevent.EventSeverity;

import java.io.Serializable;
import java.util.Date;

@Data
public class EventImpl implements Event {
Expand All @@ -10,4 +14,10 @@ public class EventImpl implements Event {
String objectId;
Long sequence;
Object meta;

Serializable id;
String serverUUID;
EventSeverity severity;
Date lastUpdated;
int schemaVersion;
}
16 changes: 0 additions & 16 deletions core/src/main/java/com/dtolabs/rundeck/core/event/EventQuery.java

This file was deleted.

@@ -1,11 +1,13 @@
package com.dtolabs.rundeck.core.event;

import lombok.Data;
import org.rundeck.app.data.model.v1.storedevent.StoredEventQuery;
import org.rundeck.app.data.model.v1.storedevent.StoredEventQueryType;

import java.util.Date;

@Data
public class EventQueryImpl implements EventQuery {
public class EventQueryImpl implements StoredEventQuery {
String projectName;
String subsystem;
String topic;
Expand All @@ -15,5 +17,5 @@ public class EventQueryImpl implements EventQuery {
Integer maxResults = 20;
Integer offset = 0;
Long sequence;
EventQueryType queryType = EventQueryType.SELECT;
StoredEventQueryType queryType = StoredEventQueryType.SELECT;
}

This file was deleted.

@@ -1,5 +1,6 @@
package com.dtolabs.rundeck.core.event;

import org.rundeck.app.data.model.v1.storedevent.StoredEventQuery;
import org.rundeck.app.spi.AppService;

import java.util.List;
Expand All @@ -9,7 +10,7 @@ public interface EventStoreService extends AppService {

void storeEventBatch(List<Event> events);

EventQueryResult query(EventQuery query);
EventQueryResult query(StoredEventQuery query);

EventStoreService scoped(Event eventTemplate, EventQuery queryTemplate);
EventStoreService scoped(Event eventTemplate, StoredEventQuery queryTemplate);
}

0 comments on commit ffcea21

Please sign in to comment.