-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/time source #57
Merged
Merged
Changes from 62 commits
Commits
Show all changes
67 commits
Select commit
Hold shift + click to select a range
22f8275
Created CARMA Cloud time source and simulation federate
kruegersp 160e8d5
Added SimFederal servlet configuration
kruegersp aa24677
Updated SimFederate to test ambassador address.
kruegersp 870f189
Update SimFederate import InetAdress.
kruegersp 711109a
Fixed SimFederate registration JSON message.
kruegersp 4a01acf
Update Dockerfile with simulation configuration.
kruegersp b1eccdd
Update rsu.js
kruegersp ce6e7ee
Update map.js
kruegersp 02370bc
Update Dockerfile
kruegersp fb35e0d
Update ihp.js
kruegersp d90013a
SimFederate separated registration retry from socket close
kruegersp 3d1b9dc
Update web.xml
kruegersp 6eb30bb
Update Dockerfile
kruegersp 7417127
Update Dockerfile
kruegersp d0d763d
Update SimFederate.java
kruegersp 9d5cbff
Update RoadMark.java
kruegersp 9fb6b5a
Update satellite-streets-v11.json
kruegersp 6f4a1f7
Update sourcelayers.json
kruegersp f62d820
Update validatexodr_sourcelayers.json
kruegersp d500a6d
Removed commented-out RSM Servlet.
kruegersp c4b8f06
Default traffic control update and start time to 0L.
kruegersp e92f7f5
Added port and list attribute parsing to old TCR format.
kruegersp f9f5697
Updated TcmReqServlet to preserve request host address.
kruegersp d2579c8
Added error log to TCM response connection.
kruegersp 7b1f836
Add docker and dockerhub workflows
paulbourelly999 ced9ff0
Build and push image for testing
paulbourelly999 2937c05
Update web.xml init TimeSource singleton first and added CARMA Cloud …
kruegersp 0170b5d
Delete lib/libcs2cswrapper.so
kruegersp 60633c8
Added CARMA Cloud simulation id configuration item and handle excepti…
kruegersp de2170a
Use TimeSource to handle simulation and real world time, remove extra…
kruegersp 79c3315
Update TcmReqServlet to use TimeSource
kruegersp de7fd12
Update web.xml to add explicit simulation mode logical flag
kruegersp 6616549
Update SimFederate to check for explicit simulation mode configuration
kruegersp 8d2d5e3
Update SimFederate to use JSON libary for building ambassador registr…
kruegersp a2c1965
Update SimFederate fixed sid typo
kruegersp 3e09834
Update dockerfile and move instructions to scripts
paulbourelly999 4778fe4
Install GIT for checkout
paulbourelly999 8a65604
Fix build/install scripts issues
paulbourelly999 5103d16
Figure out CI VM path
paulbourelly999 c788b25
Fix path error
paulbourelly999 74148ef
Remove rm calls in build script
paulbourelly999 4f464dc
Update to build scripts
paulbourelly999 1f8235d
Print commands in scripts and their arguments as exexuted
paulbourelly999 1acae3c
Update
paulbourelly999 713fe56
Updates to fix carma-cloud path to absolute /home/carma-cloud inside …
paulbourelly999 340fee9
Update path for workflow
paulbourelly999 8e28d16
Fix issues
paulbourelly999 32b442a
Updates
paulbourelly999 d9a47fa
Updates
paulbourelly999 b91b142
Updates
paulbourelly999 b48a1c4
Update
paulbourelly999 2759f50
Updates
paulbourelly999 6de48c0
Removing circle ci workflow that was replaced with github action
paulbourelly999 792f9f5
Update with docker-compose file, testing script and volume directory
paulbourelly999 311cf83
add carma-cloud-config work folder
EricChen-Lei 81cf059
Update install_dependencies.sh
kruegersp c350996
Update build.sh
kruegersp 9c09200
Update deployment_test.yml
kruegersp 6a4dd17
Update map.js
kruegersp f5024cc
Update ihp.js
kruegersp 953d2f5
Update rsu.js
kruegersp fb53afe
Revert "add carma-cloud-config work folder"
EricChen-Lei 599eb98
Update build.sh to modify default host path
kruegersp c56b8e1
Delete carma-cloud-config/server.xml
kruegersp e03b854
Create web.xml for simulation
kruegersp 2750614
Update web.xml to adjust SimFederate load on startup order
kruegersp 0b1edd1
Remove trigger for building feature/time-source docker image
paulbourelly999 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
on: | ||
push: | ||
branches: | ||
- develop | ||
- master | ||
- "release/*" | ||
pull_request: | ||
types: [opened, synchronize, reopened] | ||
name: Deployment Test | ||
jobs: | ||
deployment_test: | ||
runs-on: ubuntu-latest | ||
container: | ||
image: ubuntu:22.04 | ||
defaults: | ||
run: | ||
shell: bash | ||
steps: | ||
- name: Install git | ||
# Installing git for checkout action | ||
run: | | ||
apt update | ||
export DEBIAN_FRONTEND=noninteractive | ||
apt-get install -y git | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
# Disabling shallow clone is recommended for improving relevancy of reporting | ||
fetch-depth: 0 | ||
path: ${{ github.event.repository.name }} | ||
submodules: recursive | ||
- name: Move source code | ||
run: mv $GITHUB_WORKSPACE/${{ github.event.repository.name }} /home/carma-cloud | ||
- name: Install dependencies | ||
run: | | ||
cd /home/carma-cloud/scripts | ||
./install_dependencies.sh | ||
- name: Build | ||
run: | | ||
cd /home/carma-cloud/scripts | ||
./build.sh | ||
- name: Configure network and set privileges | ||
run: | | ||
echo -e '127.0.0.1\tcarmacloud' | tee -a /etc/hosts | ||
groupadd tomcat | ||
useradd -g tomcat -m tomcat | ||
chmod g+r /opt/tomcat/conf/* | ||
chmod -R o-rwx /opt/tomcat/webapps/* | ||
chown -R root:tomcat /opt/tomcat | ||
chown -R tomcat:tomcat /opt/tomcat/logs | ||
chown -R tomcat:tomcat /opt/tomcat/temp | ||
chown -R tomcat:tomcat /opt/tomcat/work | ||
- name: Start Tomcat and verify deployment | ||
run: | | ||
/opt/tomcat/bin/catalina.sh start | ||
sleep 10 | ||
if [[ `grep "startup in" /opt/tomcat/logs/catalina.out | wc -l` -ne "1" ]]; then exit 1; fi | ||
if [[ `wget -O - http://carmacloud:8080 | grep "CARMAcloud Login" | wc -l` -ne "1" ]]; then exit 2; fi | ||
if [[ `wget -O - --post-data="uname=ccadmin&pword=admin_testpw" http://carmacloud:8080/api/auth/login | grep "token" | wc -l` -ne "1" ]]; then exit 3; fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
name: Docker build | ||
on: | ||
pull_request: | ||
types: [opened, synchronize, reopened] | ||
jobs: | ||
docker: | ||
uses: usdot-fhwa-stol/actions/.github/workflows/docker.yml@main | ||
with: | ||
runner: ubuntu-latest |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
name: Docker Hub build | ||
on: | ||
push: | ||
branches: | ||
- develop | ||
- master | ||
- "release/*" | ||
- feature/time-source | ||
tags: | ||
- "carma-system-*" | ||
jobs: | ||
dockerhub: | ||
uses: usdot-fhwa-stol/actions/.github/workflows/dockerhub.yml@main | ||
secrets: | ||
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} | ||
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} | ||
with: | ||
runner: ubuntu-latest |
paulbourelly999 marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,51 +1,15 @@ | ||
FROM ubuntu:22.04 | ||
paulbourelly999 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
# update package manager and install prerequisites | ||
RUN apt-get update -y && \ | ||
apt-get install -y build-essential cmake git wget pkg-config sqlite3 libcurl4-openssl-dev libsqlite3-dev libtiff5-dev | ||
# download geodesy projection library source | ||
WORKDIR /tmp | ||
RUN wget -q https://download.osgeo.org/proj/proj-9.3.0.tar.gz && \ | ||
tar -xzf proj-9.3.0.tar.gz && \ | ||
rm proj-9.3.0.tar.gz && \ | ||
mv proj-9.3.0 proj && \ | ||
mkdir -p proj/build | ||
# download openjdk | ||
RUN wget -q https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_linux-x64_bin.tar.gz && \ | ||
tar -xzf openjdk-21.0.1_linux-x64_bin.tar.gz && \ | ||
rm openjdk-21.0.1_linux-x64_bin.tar.gz && \ | ||
mv jdk-21.0.1 /opt/jdk | ||
# download apache tomcat | ||
RUN wget -q https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.83/bin/apache-tomcat-9.0.83.tar.gz && \ | ||
tar -xzf apache-tomcat-9.0.83.tar.gz && \ | ||
rm apache-tomcat-9.0.83.tar.gz && \ | ||
mv apache-tomcat-9.0.83 tomcat && \ | ||
sed -i 's/appBase="webapps"/appBase="webapps\/carmacloud"/g' tomcat/conf/server.xml && \ | ||
rm -r tomcat/webapps/* | ||
COPY scripts/install_dependencies.sh /home/carma-cloud/scripts/install_dependencies.sh | ||
RUN /home/carma-cloud/scripts/install_dependencies.sh | ||
COPY src /home/carma-cloud/src | ||
COPY lib /home/carma-cloud/lib | ||
COPY web /home/carma-cloud/web | ||
COPY osmbin /home/carma-cloud/osmbin | ||
COPY *.sh /home/carma-cloud/ | ||
COPY scripts/build.sh /home/carma-cloud/scripts/build.sh | ||
|
||
# download carma-cloud source | ||
RUN git clone https://github.com/usdot-fhwa-stol/carma-cloud.git cc && \ | ||
rm cc/lib/libcs2cswrapper.so && \ | ||
mkdir -p tomcat/webapps/carmacloud/ROOT && \ | ||
mv cc/web/* tomcat/webapps/carmacloud/ROOT | ||
# compile geodesy projection library | ||
WORKDIR /tmp/proj/build | ||
RUN cmake .. && \ | ||
cmake --build . && \ | ||
cmake --build . --target install | ||
# compile jni projection library | ||
WORKDIR /tmp/cc/src/cc/geosrv | ||
RUN gcc -c -std=c11 -fPIC -Wall -I /opt/jdk/include/ -I /opt/jdk/include/linux/ -I /tmp/proj/src/ cs2cswrapper.c && \ | ||
gcc -shared -lproj cs2cswrapper.o -o libcs2cswrapper.so && \ | ||
mv *.so /usr/lib | ||
# compile carma-cloud java source and cleanup | ||
WORKDIR /tmp | ||
RUN find ./cc/src -name "*.java" > sources.txt && \ | ||
mkdir -p tomcat/webapps/carmacloud/ROOT/WEB-INF/classes && \ | ||
/opt/jdk/bin/javac -cp tomcat/lib/servlet-api.jar:cc/lib/commons-compress-1.18.jar:cc/lib/javax.json.jar:cc/lib/json-20210307.jar:cc/lib/keccakj.jar:cc/lib/log4j-api-2.16.0.jar:cc/lib/vector_tile.jar -d tomcat/webapps/carmacloud$ | ||
rm sources.txt && \ | ||
/opt/jdk/bin/java -cp tomcat/webapps/carmacloud/ROOT/WEB-INF/classes/:tomcat/lib/servlet-api.jar cc.ws.UserMgr ccadmin admin_testpw > tomcat/webapps/carmacloud/user.csv && \ | ||
echo "JAVA_HOME=/opt/jdk" > tomcat/bin/setenv.sh && \ | ||
mv tomcat /opt && \ | ||
rm -r proj && \ | ||
rm -r cc | ||
# start carma-cloud | ||
CMD /opt/tomcat/bin/catalina.sh start | ||
RUN /home/carma-cloud/scripts/build.sh | ||
ENTRYPOINT [ "/opt/tomcat/bin/catalina.sh", "run" ] | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
import http.client | ||
import json | ||
import requests | ||
|
||
connection = http.client.HTTPConnection("localhost:8080") | ||
# headers = {'Content-type': 'application/json'} | ||
foo = {'timestep': 100, 'seq': 1} | ||
|
||
connection.request("POST", "/carmacloud/simulation/dumb", json.dumps(foo)) | ||
x = requests.post("http://127.0.0.1:8080/carmacloud/simulation/dumb", json.dumps(foo)) | ||
print(x) | ||
|
||
response = connection.getresponse() | ||
print(response.read().decode()) | ||
|
||
connection.request("GET", '/api/rop/details') | ||
response = connection.getresponse() | ||
print(response.read().decode()) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
status = warn | ||
monitorInterval = 300 | ||
|
||
appender.rolling.type = RollingFile | ||
appender.rolling.name = LogToRollingFile | ||
appender.rolling.fileName = /opt/tomcat/logs/carmacloud.log | ||
appender.rolling.filePattern = /opt/tomcat/logs/carmacloud-%d{yyyyMMdd}.log.gz | ||
appender.rolling.layout.type = PatternLayout | ||
appender.rolling.layout.pattern = [%-5level %d{HH:mm:ss.SSS} [%c{1}] - %msg%n | ||
appender.rolling.policies.type = Policies | ||
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy | ||
appender.rolling.policies.time.interval = 1 | ||
appender.rolling.policies.time.modulate = false | ||
appender.rolling.strategy.type = DefaultRolloverStrategy | ||
appender.rolling.strategy.max = 366 | ||
|
||
rootLogger.level = debug | ||
rootLogger.appenderRef.stdout.ref = LogToRollingFile |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
REMOVE FEATURE BRANCH PUSH BEFORE MERGING note for paul