Skip to content

Commit 7540a59

Browse files
authored
Added CI (#7)
1 parent 998577d commit 7540a59

85 files changed

Lines changed: 1605 additions & 2 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: build
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- uses: actions/checkout@v2
16+
- name: Setup Java JDK
17+
uses: actions/setup-java@v2.1.0
18+
with:
19+
java-version: 11
20+
distribution: zulu
21+
- name: Build
22+
run: ./gradlew build

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Cloud Property Graph (CloudPG)
22

3+
[![build](https://github.com/clouditor/cloud-property-graph/actions/workflows/build.yml/badge.svg)](https://github.com/clouditor/cloud-property-graph/actions/workflows/build.yml)
4+
![GitHub last commit](https://img.shields.io/github/last-commit/clouditor/cloud-property-graph)
5+
![GitHub](https://img.shields.io/github/license/clouditor/cloud-property-graph)
6+
[![](https://jitpack.io/v/clouditor/cloud-property-graph.svg)](https://jitpack.io/#clouditor/cloud-property-graph)
7+
8+
39
The Cloud Property Graph is based on a Code Property Graph and tries to connect static code analysis and Cloud runtime assessment. It is based on the [CPG](https://github.com/Fraunhofer-AISEC/cpg) project by Fraunhofer AISEC. We aim to contribute certain parts of this project back to the upstream repo, once they are more matured.
410

511
Furthermore, we plan to integrate a Go-based version of the CloudPG into our main Cloud assessment tool, [Clouditor](https://github.com/clouditor/clouditor).
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
5+
public class ABAC extends Authorization {
6+
7+
public ABAC() {
8+
super();
9+
}
10+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
5+
public class AccessRestriction extends Authorization {
6+
7+
protected boolean inbound;
8+
protected String restrictedPorts;
9+
10+
public AccessRestriction(boolean inbound, String restrictedPorts) {
11+
super();
12+
setInbound(inbound);
13+
setRestrictedPorts(restrictedPorts);
14+
}
15+
16+
public boolean isInbound() {
17+
return inbound;
18+
}
19+
20+
public void setInbound(boolean inbound) {
21+
this.inbound = inbound;
22+
}
23+
24+
public String getRestrictedPorts() {
25+
return restrictedPorts;
26+
}
27+
28+
public void setRestrictedPorts(String restrictedPorts) {
29+
this.restrictedPorts = restrictedPorts;
30+
}
31+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
import java.util.Map;
5+
import org.neo4j.ogm.annotation.Transient;
6+
7+
public class Account extends CloudResource {
8+
9+
public Account(GeoLocation geoLocation, Map<String, String> labels) {
10+
super(geoLocation, labels);
11+
}
12+
}
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
import java.util.List;
5+
import de.fraunhofer.aisec.cpg.graph.declarations.TranslationUnitDeclaration;
6+
7+
public class Application extends Node {
8+
9+
protected List<Functionality> functionalitys;
10+
protected List<Compute> runsOn;
11+
protected List<TranslationUnitDeclaration> translationUnits;
12+
protected String programmingLanguage;
13+
14+
public Application(List<Functionality> functionalitys, List<Compute> runsOn,
15+
List<TranslationUnitDeclaration> translationUnits, String programmingLanguage) {
16+
setFunctionalitys(functionalitys);
17+
setRunsOn(runsOn);
18+
setTranslationUnits(translationUnits);
19+
setProgrammingLanguage(programmingLanguage);
20+
}
21+
22+
public List<Functionality> getFunctionalitys() {
23+
return functionalitys;
24+
}
25+
26+
public void setFunctionalitys(List<Functionality> functionalitys) {
27+
this.functionalitys = functionalitys;
28+
}
29+
30+
public List<Compute> getRunsOn() {
31+
return runsOn;
32+
}
33+
34+
public void setRunsOn(List<Compute> runsOn) {
35+
this.runsOn = runsOn;
36+
}
37+
38+
public List<TranslationUnitDeclaration> getTranslationUnits() {
39+
return translationUnits;
40+
}
41+
42+
public void setTranslationUnits(List<TranslationUnitDeclaration> translationUnits) {
43+
this.translationUnits = translationUnits;
44+
}
45+
46+
public String getProgrammingLanguage() {
47+
return programmingLanguage;
48+
}
49+
50+
public void setProgrammingLanguage(String programmingLanguage) {
51+
this.programmingLanguage = programmingLanguage;
52+
}
53+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
5+
public class AtRestEncryption extends Confidentiality {
6+
7+
protected String algorithm;
8+
protected String keymanager;
9+
10+
public AtRestEncryption(String algorithm, String keymanager) {
11+
super();
12+
setAlgorithm(algorithm);
13+
setKeymanager(keymanager);
14+
}
15+
16+
public String getAlgorithm() {
17+
return algorithm;
18+
}
19+
20+
public void setAlgorithm(String algorithm) {
21+
this.algorithm = algorithm;
22+
}
23+
24+
public String getKeymanager() {
25+
return keymanager;
26+
}
27+
28+
public void setKeymanager(String keymanager) {
29+
this.keymanager = keymanager;
30+
}
31+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
5+
public class Auditing extends SecurityFeature {
6+
7+
public Auditing() {
8+
super();
9+
}
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
5+
public class Authenticity extends SecurityFeature {
6+
7+
public Authenticity() {
8+
super();
9+
}
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package io.clouditor.graph;
2+
3+
import de.fraunhofer.aisec.cpg.graph.Node;
4+
5+
public class Authorization extends SecurityFeature {
6+
7+
public Authorization() {
8+
super();
9+
}
10+
}

0 commit comments

Comments
 (0)