Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
219 commits
Select commit Hold shift + click to select a range
84923ea
using class=2 to avoid triplexing low-voltage three-phase loads
temcdrm Feb 7, 2021
674b077
v 1.2.17 links with HELICS
temcdrm Mar 15, 2021
ba8321a
Merge pull request #1495 from GRIDAPPSD/develop
temcdrm Mar 18, 2021
eb23c75
added catagory in service info
poorvasharma Apr 29, 2021
9afcbdd
changed catagory to category
poorvasharma May 4, 2021
22fa79a
catagory to category
poorvasharma May 4, 2021
218fc54
Merge pull request #1515 from poorva1209/add_service_catagory
bibiraju May 4, 2021
108eda9
Adding Ochre command functionality in the helics
afisher1 May 13, 2021
0bf75cb
removing erroneous undefined variable in helics bridge
afisher1 May 14, 2021
55e7c11
fixing more typos and converting more f strings in
afisher1 May 14, 2021
33a811e
converting more f strings
afisher1 May 14, 2021
b811755
fixing parsing error when difference command is for
afisher1 May 18, 2021
90b9d60
rearranging code to better handle forward messages
afisher1 May 18, 2021
9d440b7
Merge pull request #1521 from afisher1/develop
shpoudel May 18, 2021
8ee3b84
removing simulation id from ochre house destination
afisher1 May 27, 2021
2010997
Merge pull request #1524 from afisher1/develop
shpoudel May 27, 2021
789a376
Update vnom handler to work if no simulation is provided (similar to …
tdtalbot Jun 9, 2021
f3d54e7
Merge pull request #1531 from GRIDAPPSD/vnom-1529
shpoudel Jun 15, 2021
96d9a10
Github actions
tonya1 Jun 23, 2021
2ea3347
artifact
tonya1 Jun 23, 2021
1578480
artifact
tonya1 Jun 23, 2021
a79c29e
job dependency
tonya1 Jun 23, 2021
6a89501
combine jobs
tonya1 Jun 23, 2021
93c75e7
Merge pull request #1534 from tonya1/actions
tonya1 Jun 23, 2021
38e1738
Merge branch 'ochre_simulation2' of github.com:tdtalbot/GOSS-GridAPPS…
afisher1 Jul 23, 2021
f7c0de2
Merge branch 'develop' of github.com:GRIDAPPSD/GOSS-GridAPPS-D into d…
afisher1 Jul 23, 2021
1b8177c
used gld_helics_config instead of ochre_helics_config in startup file
poorva1209 Jul 27, 2021
f25f964
Merge branch 'develop' of https://github.com/gridappsd/goss-gridapps-…
poorvasharma Jul 27, 2021
190f1d5
used ochre helics config in model start up intead of model output if …
poorva1209 Jul 27, 2021
e5a8d02
Merge branch 'test_1528' of https://github.com/poorva1209/GOSS-GridAP…
shpoudel Jul 28, 2021
e3f60cf
Updated after testing OCHRE control commands
shpoudel Jul 28, 2021
ea3be5b
Merge branch 'test_1528' of https://github.com/poorva1209/goss-gridap…
poorva1209 Aug 2, 2021
b5970f4
Changing queryModel to follow both incoming and outgoing links when b…
tdtalbot Aug 4, 2021
37c8969
Merge branch 'test_1528' of github.com:poorva1209/GOSS-GridAPPS-D int…
afisher1 Aug 5, 2021
a52aabd
passing model id when making ochre config file
poorva1209 Aug 12, 2021
e58db12
Merge branch 'test_1528' of https://github.com/afisher1/goss-gridapps…
poorva1209 Aug 12, 2021
66ba840
Update requirements.txt
craig8 Aug 16, 2021
7dc7718
Move to pypi for gridappsd-python
tonya1 Aug 23, 2021
6d2d96e
Move to pypi for gridappsd-python
tonya1 Aug 23, 2021
fac9a6b
Update Dockerfile
tonya1 Aug 25, 2021
555b15a
Merge pull request #1547 from tonya1/updatepython
craig8 Aug 25, 2021
82bc766
fixes for helics_goss_bridge to recieve
afisher1 Aug 25, 2021
a8d1448
Merge branch 'develop' of github.com:GRIDAPPSD/GOSS-GridAPPS-D into t…
afisher1 Aug 25, 2021
3463262
correcting mix of tab/space error in helics goss bridge
afisher1 Aug 25, 2021
841c58e
Merge pull request #3 from poorva1209/dynamic_models
afisher1 Aug 25, 2021
b130090
Update main.yml
tonya1 Aug 25, 2021
b743ee0
correcting a bug where helics messages are not being
afisher1 Aug 26, 2021
3f12c8e
Merge branch 'test_1528' of github.com:afisher1/GOSS-GridAPPS-D into …
afisher1 Aug 26, 2021
c7b0088
removing unnecessary GridLAB-D federate key
afisher1 Aug 26, 2021
3ad0231
added publish_period, using default model_startup if not ieee13ochre
poorva1209 Aug 27, 2021
378075e
Merge pull request #4 from poorva1209/test_1528_update
afisher1 Aug 27, 2021
a972534
Update main.yml
tonya1 Aug 31, 2021
cca8647
Merge pull request #1549 from afisher1/test_1528
poorva1209 Aug 31, 2021
5bc56b7
Merge pull request #1540 from GRIDAPPSD/86-querymodel
poorva1209 Aug 31, 2021
3b2011e
updated ochre configuration and simulation to run with any ochre model
poorva1209 Oct 14, 2021
d7e8550
Merge branch 'develop' into dynamic_models
poorva1209 Oct 15, 2021
fff120f
Merge pull request #1563 from poorva1209/dynamic_models
tonya1 Oct 15, 2021
dca8a80
changes made to run SDGE model at relatime
poorva1209 Nov 18, 2021
696cdfb
Merge pull request #1572 from poorva1209/sdge_realtime
shpoudel Dec 2, 2021
58eaa68
Update GLDAllConfigurationHandler.java
poorva1209 Dec 2, 2021
3f903a8
resolved issue with second simulation not completing properly
poorva1209 Dec 6, 2021
2a8198f
Merge pull request #1576 from poorva1209/issue_1482
poorva1209 Dec 6, 2021
d47d9b1
updated proven message and client version
poorvasharma Jan 10, 2022
4522eae
Merge pull request #1587 from poorva1209/update_proven
tonya1 Jan 11, 2022
2ab01b8
first version of field interface manager for distributed api
poorva1209 Feb 4, 2022
cb1c8ed
Merge pull request #1598 from poorva1209/field_bus_manager
tonya1 Feb 5, 2022
f873ab6
Add topology-processor, remove /tmp/source
tonya1 Feb 11, 2022
75092eb
Providing proper CIM difference support for RegulatingControl.enabled,
afisher1 Feb 17, 2022
3f08a88
Merge pull request #1447 from GRIDAPPSD/opendss/v1.2.16
tonya1 Feb 21, 2022
3b565c7
changes after testing sample dist app
poorva1209 Mar 2, 2022
7a80df9
added feature for starting service with platform
poorva1209 Mar 3, 2022
3db71aa
Merge branch 'field_bus_manager' of https://github.com/poorva1209/gos…
poorva1209 Mar 4, 2022
5a6a53a
after testing with topo daemon
poorva1209 Mar 15, 2022
9307ba3
revert changes in log data manager
poorva1209 Mar 15, 2022
09fe48b
revert changes in log data manager
poorva1209 Mar 15, 2022
3d11ce4
revert changes that are not needed
poorva1209 Mar 15, 2022
1c316ca
revert changes that are not needed
poorva1209 Mar 15, 2022
653ad2f
Merge pull request #1610 from poorva1209/start_service_with_platform
poorva1209 Mar 15, 2022
d219509
Merge pull request #1603 from tonya1/top_proc
AAndersn Mar 17, 2022
047b78e
Fixed renamed topology filename
tonya1 Mar 19, 2022
4e1e313
Merge pull request #1621 from tonya1/fix_topo
tonya1 Mar 19, 2022
d07bfd5
Merge branch 'develop' of github.com:GRIDAPPSD/GOSS-GridAPPS-D into d…
afisher1 Mar 23, 2022
ccf959d
Making necessary modifications for handling measurements
afisher1 Mar 30, 2022
9fe07ce
store app output
poorva1209 Apr 8, 2022
d3b2085
Update timeseries request object to support new query api
tdtalbot Apr 13, 2022
3769208
updated timseries data store api
poorva1209 Apr 13, 2022
ce16432
Merge pull request #1633 from poorva1209/issue_110
poorva1209 Apr 13, 2022
727179c
Converted to multi-class model for time series data request
tdtalbot Apr 14, 2022
c33863a
Updated two more instances of requesttimeseriesdata
tdtalbot Apr 14, 2022
c6e2171
Fixes to the RequestTimeSeries object types after testing
tdtalbot Apr 15, 2022
10ae81c
Deteremine proven query url based on whether it is the new or old que…
tdtalbot Apr 18, 2022
bbaf8b4
Merge branch 'develop' of https://github.com/GRIDAPPSD/GOSS-GridAPPS-…
tdtalbot Apr 18, 2022
acf285f
using advances function for proven client
poorva1209 Apr 20, 2022
397baa2
Merge pull request #1639 from poorva1209/test_1636
poorva1209 Apr 20, 2022
d158303
getting datatype for app id
poorva1209 Apr 21, 2022
c0cc348
Merge pull request #1643 from poorva1209/develop
poorva1209 Apr 21, 2022
512af8b
Copy topology processor daemon config file to services directory.
tonya1 May 9, 2022
891caef
Merge pull request #1655 from GRIDAPPSD/topo2
AAndersn May 9, 2022
468f28d
Add gridappsd-toolbox to Dockerfile
tonya1 May 10, 2022
d260f29
Merge pull request #1656 from GRIDAPPSD/gridappsd-toolbox
garydblack May 10, 2022
9ada0c4
Merge branch 'develop' of github.com:GRIDAPPSD/GOSS-GridAPPS-D into d…
afisher1 May 10, 2022
1a86afc
Update to gridappsd-toolbox
tonya1 May 10, 2022
91d0714
Merge pull request #1657 from GRIDAPPSD/gridappsd-toolbox
garydblack May 10, 2022
64d2e63
correcting issue where bridge was not checking
afisher1 May 18, 2022
1e4e277
Merge pull request #1605 from afisher1/develop
poorva1209 May 23, 2022
37b4eed
Update FieldBusManagerImpl.java
poorva1209 Jun 22, 2022
e7b6741
Update FieldBusManagerImpl.java
poorva1209 Jun 23, 2022
ac4c3a6
resolved error
poorva1209 Jul 29, 2022
e36439f
Merge pull request #1662 from poorva1209/develop
poorva1209 Jul 29, 2022
6fdb984
adding support to read excell sheet with list of load
afisher1 Aug 9, 2022
7499e89
added libraries and function to read xls file to get load names
poorva1209 Aug 11, 2022
3b01c46
Merge pull request #5 from poorva1209/ochreLoadModeling
afisher1 Aug 11, 2022
bff9061
Revert "Ochre load modeling"
afisher1 Aug 11, 2022
c8fcc6d
Merge pull request #6 from afisher1/revert-5-ochreLoadModeling
afisher1 Aug 11, 2022
80a09c6
updated libraries for poi
poorva1209 Aug 11, 2022
2b34697
Merge branch 'ochreLoadModeling' of github.com:poorva1209/GOSS-GridAP…
afisher1 Aug 11, 2022
9cb3388
Merge branch 'ochreLoadModeling' into ochreLoadModeling
afisher1 Aug 11, 2022
cb3e2ac
Merge pull request #7 from poorva1209/ochreLoadModeling
afisher1 Aug 11, 2022
dac275b
Merge branch 'ochreLoadModeling' of github.com:afisher1/GOSS-GridAPPS…
afisher1 Aug 11, 2022
20a2187
Update GLDAllConfigurationHandler.java
poorva1209 Aug 11, 2022
f2d4185
Merge pull request #8 from poorva1209/patch-1
afisher1 Aug 11, 2022
204b161
Merge branch 'ochreLoadModeling' of github.com:afisher1/GOSS-GridAPPS…
afisher1 Aug 11, 2022
7284318
adding processing of a separate_loads_file in the
afisher1 Aug 11, 2022
337b972
updated after testing separated load for gridlab-d
poorva1209 Aug 22, 2022
82e1f6f
reverting unnecessary changes
poorva1209 Aug 22, 2022
f3ffc93
reverting unnecessary changes
poorva1209 Aug 22, 2022
d18dc42
Merge pull request #1667 from poorva1209/test_1666
poorva1209 Aug 22, 2022
bb0d972
passing load file sto ochre and number of load federated to helics
poorva1209 Aug 22, 2022
4ba4eaf
Merge pull request #1668 from poorva1209/develop
poorva1209 Aug 22, 2022
51a939b
recording simulation output at 1 minute if realtime is false
poorva1209 Oct 26, 2022
f1e0c39
Merge pull request #1670 from poorva1209/realtime_false
poorva1209 Oct 26, 2022
b0cb32f
added api to return field_mrid
poorva1209 Nov 17, 2022
558a68c
Merge pull request #1677 from poorva1209/return_field_model_id
poorva1209 Nov 17, 2022
4836490
addd tostring methods to switch and secondary areas for distributed api
poorva1209 Nov 22, 2022
6388b26
Merge pull request #1678 from poorva1209/cim-profile
poorva1209 Nov 22, 2022
37237a1
resolved incorrect mapping of measurements
poorva1209 Feb 7, 2023
75e0938
Merge pull request #1688 from poorva1209/develop
craig8 Feb 7, 2023
fdf59bb
Updated path for topology-processor
tonya1 Feb 10, 2023
797d5d3
Merge pull request #1689 from GRIDAPPSD/update_topology_processor
poorva1209 Feb 10, 2023
d003428
Update branch for topology-processor
tonya1 Feb 11, 2023
578dd73
Update topology_processor
tonya1 Feb 11, 2023
d305c80
Merge pull request #1690 from GRIDAPPSD/update_topology_processor
tonya1 Feb 11, 2023
7f1cbe7
Update Dockerfile topology-processor branch to main
tonya1 Feb 11, 2023
e5ab08b
Merge pull request #1693 from GRIDAPPSD/update-topology-processor-branch
tonya1 Feb 11, 2023
36ad970
Remove specific version number from requirements.txt to allow updates…
tonya1 Apr 10, 2023
612fd79
Merge pull request #1711 from tonya1/python3.10
craig8 May 17, 2023
dd717a3
Updated to work with the new version of cimhub
tdtalbot Jun 9, 2023
2ceaa0d
Update FieldBusManagerImpl.java
poorva1209 Jul 13, 2023
3e8df17
resolved error
poorva1209 Jul 14, 2023
35d0f50
Merge pull request #1739 from poorva1209/develop
poorva1209 Jul 14, 2023
23e9fa4
Update startup scripts to support the AUTOSTART environment variable
tonya1 Jul 17, 2023
d32b1ec
Fix build errors when using new cimhub branch merged with seto feature
tdtalbot Aug 10, 2023
53c9d57
Trying 0 for manual files value
tdtalbot Aug 14, 2023
1fe15fc
Changed cimhub version to include symbol formatting fix
tdtalbot Aug 15, 2023
caf817d
Merge pull request #1740 from tonya1/autostart
poorva1209 Nov 17, 2023
faa2d4e
resolved bugs to start multiple simulations and services within multi…
poorva1209 Jan 5, 2024
344bebd
Auto-starting context_manager as service with cim-graph 1.0
poorva1209 Jan 5, 2024
2407dde
Update build-gridappsd-container
craig8 Jan 10, 2024
d615f4a
Merge pull request #10 from GRIDAPPSD/develop
tdtalbot Jan 25, 2024
fcc9413
Merge pull request #1758 from GRIDAPPSD/context_manager
craig8 Jan 29, 2024
67328ab
Added pre to the final install of requirements
craig8 Jan 30, 2024
8857df9
Update Dockerfile
poorva1209 Jan 30, 2024
720fa81
Merge pull request #1762 from GRIDAPPSD/fix-build
poorva1209 Jan 30, 2024
fbd3ba5
Adding optional automatic simulation pause after
afisher1 Apr 8, 2024
c33fb1c
removing unused variable in helics_goss_bridge
afisher1 Apr 9, 2024
b60655c
Merge pull request #1772 from afisher1/feature/automaticSimulationPause
craig8 Apr 9, 2024
b99f5c5
Returning valid json if response data is not valid json like glm or dss
poorva1209 Apr 11, 2024
c9e0581
Returning valid json if response data is not valid json like glm or dss
poorva1209 Apr 11, 2024
d8aee9c
Returning valid json if response data is not valid json like glm or dss
poorva1209 Apr 11, 2024
2981889
Merge pull request #1773 from poorva1209/develop
afisher1 Apr 25, 2024
7f93749
added field_model_mrid to service start
poorva1209 May 2, 2024
ebb89a4
added distrbuted static y bus
poorva1209 May 9, 2024
ac99846
Update ServiceManagerImpl.java
poorva1209 May 13, 2024
c931616
Merge pull request #1776 from poorva1209/develop
afisher1 May 14, 2024
cba9d9b
adding pause_after_measurements functionality to helics_goss_bridge and
afisher1 May 14, 2024
a84fdb4
Merge branch 'develop' of github.com:GRIDAPPSD/GOSS-GridAPPS-D into d…
afisher1 May 14, 2024
812fcf1
object name prefix change for regulators.
afisher1 Jul 11, 2024
15f454d
adding updated cimhub bugfix/50 version to this
afisher1 Jul 25, 2024
464572c
Merge pull request #11 from GRIDAPPSD/develop
tdtalbot Jul 25, 2024
f2c206c
Merge pull request #1784 from tdtalbot/cimext_master_merge
poorva1209 Jul 25, 2024
47d7de5
Merge branch 'cimext_master_merge' of github.com:GRIDAPPSD/GOSS-GridA…
afisher1 Jul 25, 2024
69668a9
updated cimhub version with seto merged in develop
poorva1209 Nov 12, 2024
60458fe
Merge branch 'cimext_master_merge' of github.com:GRIDAPPSD/GOSS-GridA…
afisher1 Jan 17, 2025
7b64290
Merge pull request #1785 from afisher1/bugfix/cimhubIssue50
poorva1209 Jan 17, 2025
37a8472
Update repositories.bnd
poorva1209 Jan 17, 2025
874309d
Merge pull request #1793 from GRIDAPPSD/cimext_master_merge
poorva1209 Jan 17, 2025
bbcc94d
updated field bus manager and dtos for new topology output
poorva1209 Feb 5, 2025
fff0818
updated field bus manager and dtos for new topology output
poorva1209 Feb 5, 2025
bd23583
updated field bus manager and dtos for new topology output
poorva1209 Feb 5, 2025
ef9dfa2
Update Dockerfile
poorva1209 Feb 5, 2025
6b07911
Fixes to work with the new seto models, updated service manager so th…
tdtalbot Feb 13, 2025
05a267a
Correct the subject in the powergrid model manager. Otherwise it som…
tdtalbot Feb 13, 2025
38f54c4
resolved bugs
poorva1209 Feb 26, 2025
94d43f4
Update Dockerfile
poorva1209 Feb 26, 2025
fe10511
Update pnnl.goss.gridappsd.cfg
poorva1209 Mar 13, 2025
f941691
formatting correction
poorva1209 Mar 14, 2025
8bdc418
update message bus is to area id
poorva1209 Mar 17, 2025
7810024
Merge branch 'topo_service_update' of https://github.com/poorva1209/g…
poorva1209 Mar 17, 2025
b1d0171
Merge pull request #1798 from poorva1209/topo_service_update
afisher1 Mar 17, 2025
dbcdd60
Merge branch 'develop' of https://github.com/gridappsd/goss-gridapps-…
poorva1209 Mar 18, 2025
296a45e
Merge pull request #1800 from GRIDAPPSD/setofix
poorva1209 Mar 18, 2025
1e37066
added start_publishing command to all substattion agent
poorva1209 Apr 16, 2025
dde2f73
Merge pull request #1807 from poorva1209/publish_command
craig8 Apr 16, 2025
f48da04
debugging
poorva1209 Apr 17, 2025
0c842cd
tested with proxy
poorva1209 Apr 18, 2025
3efd4c4
tested with proxy
poorva1209 Apr 18, 2025
805aed3
Merge pull request #1808 from poorva1209/publish_command
craig8 Apr 18, 2025
d2f9b28
Update main.yml
craig8 Apr 18, 2025
81ba5df
Merge pull request #1809 from GRIDAPPSD/craig8-workflow-dispatch
poorva1209 Apr 18, 2025
3ccf99e
HELICS 3.x updates
afisher1 Jun 5, 2025
1607bd9
changes for multi-feeder updates
poorva1209 Aug 19, 2025
6502921
adding multifeeder simulation capability to helics_goss_bridge
afisher1 Sep 18, 2025
5edb8cf
generating configuration files for multipe feeders for a single simul…
poorva1209 Sep 18, 2025
4b04e45
Merge branch 'feature/1794' of https://github.com/afisher1/goss-grida…
poorva1209 Sep 18, 2025
cbab611
fixing bugs found in the multifeeder run capability changes.
afisher1 Sep 22, 2025
ca73d3b
Merge pull request #11 from afisher1/feature/1794
afisher1 Sep 22, 2025
ab64c2d
Merge pull request #12 from poorva1209/multi_feeder
afisher1 Sep 22, 2025
d191625
Fixing changes due to debugging.
afisher1 Sep 22, 2025
ae3e506
fixing issue where bridge didn't check to see if
afisher1 Sep 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
124 changes: 124 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
on:
push:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: '8'
distribution: 'adopt'
- name: Build with Gradle
run: ./gradlew export

# - uses: actions/upload-artifact@v2
# with:
# name: gridappsd-artifact
# path: gov.pnnl.goss.gridappsd/generated/distributions/executable/run.bnd.jar
#
# push:
# runs-on: ubuntu-latest
# name: Build and push the docker container
# needs: build
# steps:
# - uses: actions/checkout@v2
#
# - uses: actions/download-artifact@v2
# with:
# name: gridappsd-artifact

- name: Checking environment
env:
DOCKER_IMAGE_NAME: ${{ secrets.DOCKER_IMAGE_NAME }}
run: |
if [ "x${{ env.DOCKER_IMAGE_NAME }}" == "x" ]; then
echo "Error: missing DOCKER_IMAGE_NAME"
exit 1
fi

- name: Log in to docker
run: |
if [ -n "${{ secrets.DOCKER_USERNAME }}" -a -n "${{ secrets.DOCKER_TOKEN }}" ]; then

echo " "
echo "Connecting to docker"
echo "${{ secrets.DOCKER_TOKEN }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
status=$?
if [ $status -ne 0 ]; then
echo "Error: status $status"
exit 1
fi
fi

- name: Build the image
env:
DOCKER_IMAGE_NAME: ${{ secrets.DOCKER_IMAGE_NAME }}
if: env.DOCKER_IMAGE_NAME != null
run: |
TAG="${GITHUB_REF#refs/heads/}"
TAG="${TAG#refs/tags/}"
TAG="${TAG//\//_}"
ORG=`echo "${{ secrets.DOCKER_PROJECT }}" | tr '[:upper:]' '[:lower:]'`
ORG="${ORG:-gridappsd}"
ORG="${ORG:+${ORG}/}"
IMAGE="${ORG}${{ env.DOCKER_IMAGE_NAME }}"
TIMESTAMP=`date +'%y%m%d%H'`
GITHASH=`git log -1 --pretty=format:"%h"`
BUILD_VERSION="${TIMESTAMP}_${GITHASH}${BRANCH:+:$TAG}"
echo "BUILD_VERSION $BUILD_VERSION"
echo "TAG ${IMAGE}:${TIMESTAMP}_${GITHASH}"
docker build --build-arg VERSION="${TAG}" --build-arg TIMESTAMP="${BUILD_VERSION}" -t ${IMAGE}:${TIMESTAMP}_${GITHASH} .
status=$?
if [ $status -ne 0 ]; then
echo "Error: status $status"
exit 1
fi

- name: Push the image
env:
DOCKER_IMAGE_NAME: ${{ secrets.DOCKER_IMAGE_NAME }}
if: env.DOCKER_IMAGE_NAME != null
run: |
TAG="${GITHUB_REF#refs/heads/}"
TAG="${TAG#refs/tags/}"
TAG="${TAG//\//_}"
ORG=`echo "${{ secrets.DOCKER_PROJECT }}" | tr '[:upper:]' '[:lower:]'`
ORG="${ORG:-gridappsd}"
ORG="${ORG:+${ORG}/}"
IMAGE="${ORG}${{ env.DOCKER_IMAGE_NAME }}"
if [ -n "${{ secrets.DOCKER_USERNAME }}" -a -n "${{ secrets.DOCKER_TOKEN }}" ]; then

if [ -n "$TAG" -a -n "$ORG" ]; then
# Get the built container name
CONTAINER=`docker images --format "{{.Repository}}:{{.Tag}}" ${IMAGE}`

echo "docker push ${CONTAINER}"
docker push "${CONTAINER}"
status=$?
if [ $status -ne 0 ]; then
echo "Error: status $status"
exit 1
fi

echo "docker tag ${CONTAINER} ${IMAGE}:$TAG"
docker tag ${CONTAINER} ${IMAGE}:$TAG
status=$?
if [ $status -ne 0 ]; then
echo "Error: status $status"
exit 1
fi

echo "docker push ${IMAGE}:$TAG"
docker push ${IMAGE}:$TAG
status=$?
if [ $status -ne 0 ]; then
echo "Error: status $status"
exit 1
fi
fi

fi
6 changes: 3 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ services:
# prepare the machine before any code
# installation scripts
before_install:
- './.travis/main.sh'
# - './.travis/main.sh'

script:
- './gradlew export'
- './.travis/build-docker.sh'
# - './gradlew export'
# - './.travis/build-docker.sh'
77 changes: 59 additions & 18 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,53 +1,94 @@
ARG GRIDAPPSD_BASE_VERSION=:master
ARG GRIDAPPSD_BASE_VERSION=:develop
FROM gridappsd/gridappsd_base${GRIDAPPSD_BASE_VERSION}

ARG TIMESTAMP

# Get the gridappsd-python from the proper repository
RUN cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-python -b develop \
&& cd gridappsd-python \
&& pip3 install -r requirements.txt \
&& pip3 install . \
&& rm -rf /root/.cache/pip/wheels

# Get the gridappsd-sensor-simulator from the proper repository
RUN cd ${TEMP_DIR} \
RUN if [ ! -d ${TEMP_DIR} ]; then mkdir ${TEMP_DIR}; fi \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-sensor-simulator -b develop \
&& cd gridappsd-sensor-simulator \
&& pip3 install -r requirements.txt \
&& mkdir -p /gridappsd/services/gridappsd-sensor-simulator \
&& rm .git -rf \
&& cp -r * /gridappsd/services/gridappsd-sensor-simulator \
&& cp /gridappsd/services/gridappsd-sensor-simulator/sensor_simulator.config /gridappsd/services/ \
&& rm -rf /root/.cache/pip/wheels
&& rm -rf /root/.cache/pip/wheels \
&& cd \
&& rm -rf ${TEMP_DIR}

# Get the gridappsd-voltage-violation from the proper repository
RUN cd ${TEMP_DIR} \
RUN mkdir ${TEMP_DIR} \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-voltage-violation -b develop \
&& cd gridappsd-voltage-violation \
&& mkdir -p /gridappsd/services/gridappsd-voltage-violation \
&& rm .git -rf \
&& cp -r * /gridappsd/services/gridappsd-voltage-violation \
&& cp /gridappsd/services/gridappsd-voltage-violation/voltage-violation.config /gridappsd/services/
&& cp /gridappsd/services/gridappsd-voltage-violation/voltage-violation.config /gridappsd/services/ \
&& cd \
&& rm -rf ${TEMP_DIR}

# Get the gridappsd-dnp3 from the proper repository
RUN cd ${TEMP_DIR} \
RUN mkdir ${TEMP_DIR} \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-dnp3 -b develop \
&& cd gridappsd-dnp3 \
&& mkdir -p /gridappsd/services/gridappsd-dnp3 \
&& rm .git -rf \
&& cp -r dnp3/* /gridappsd/services/gridappsd-dnp3 \
&& cp /gridappsd/services/gridappsd-dnp3/dnp3.config /gridappsd/services/
&& cp /gridappsd/services/gridappsd-dnp3/dnp3.config /gridappsd/services/ \
&& cd \
&& rm -rf ${TEMP_DIR}

# Get the gridappsd-alarms from the proper repository
RUN cd ${TEMP_DIR} \
RUN mkdir ${TEMP_DIR} \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-alarms -b develop \
&& cd gridappsd-alarms \
&& mkdir -p /gridappsd/services/gridappsd-alarms \
&& rm .git -rf \
&& cp -r * /gridappsd/services/gridappsd-alarms \
&& cp /gridappsd/services/gridappsd-alarms/gridappsd-alarms.config /gridappsd/services/
&& cp /gridappsd/services/gridappsd-alarms/gridappsd-alarms.config /gridappsd/services/ \
&& cd \
&& rm -rf ${TEMP_DIR}

# Get the topology-processor from the proper repository
RUN mkdir ${TEMP_DIR} \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/topology-processor -b main gridappsd-topology-background-service\
&& cd gridappsd-topology-background-service/ \
&& mkdir -p /gridappsd/services/gridappsd-topology-background-service \
&& rm .git -rf \
&& cp -r * /gridappsd/services/gridappsd-topology-background-service \
&& cp /gridappsd/services/gridappsd-topology-background-service/topo_background.config /gridappsd/services/ \
&& cd \
&& rm -rf ${TEMP_DIR}

# Get the gridappsd-toolbox from the proper repository
RUN mkdir ${TEMP_DIR} \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-toolbox -b main \
&& cd gridappsd-toolbox \
&& mkdir -p /gridappsd/services/gridappsd-toolbox \
&& rm .git -rf \
&& cp -r * /gridappsd/services/gridappsd-toolbox \
&& cp /gridappsd/services/gridappsd-toolbox/static-ybus/gridappsd-static-ybus-service.config /gridappsd/services/ \
&& cp /gridappsd/services/gridappsd-toolbox/dynamic-ybus/gridappsd-dynamic-ybus-service.config /gridappsd/services/ \
&& cd \
&& rm -rf ${TEMP_DIR}

# Get the gridapspd-distributed-ybus-service from the proper repository
RUN mkdir ${TEMP_DIR} \
&& cd ${TEMP_DIR} \
&& git clone https://github.com/GRIDAPPSD/gridappsd-distributed-static-ybus-service.git -b main \
&& cd gridappsd-distributed-static-ybus-service \
&& mkdir -p /gridappsd/services/gridappsd-distributed-static-ybus-service \
&& rm .git -rf \
&& cp -r * /gridappsd/services/gridappsd-distributed-static-ybus-service \
&& cp /gridappsd/services/gridappsd-distributed-static-ybus-service/gridappsd-distributed-static-ybus-service.config /gridappsd/services/ \
&& cd \
&& rm -rf ${TEMP_DIR}

# Copy initial applications and services into the container.
#
Expand Down Expand Up @@ -81,7 +122,7 @@ RUN chmod +x /usr/local/bin/opendsscmd && \
# before executing this script.
COPY ./gov.pnnl.goss.gridappsd/generated/distributions/executable/run.bnd.jar /gridappsd/lib/run.bnd.jar

RUN pip install -r /gridappsd/requirements.txt && \
RUN pip install --pre -r /gridappsd/requirements.txt && \
pip install -r /gridappsd/services/fncsgossbridge/requirements.txt && \
rm -rf /root/.cache/pip/wheels

Expand Down
2 changes: 1 addition & 1 deletion build-docker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ rm -rf gov.pnnl.goss/gridappsd/generated

#copy built jar to docker
echo "copying run.bnd.jar into container"
docker cp gov.pnnl.goss.gridappsd/generated/distributions/executable/run.bnd.jar gridappsddocker_gridappsd_1:/gridappsd/lib/run.bnd.jar
docker cp gov.pnnl.goss.gridappsd/generated/distributions/executable/run.bnd.jar gridappsd:/gridappsd/lib/run.bnd.jar
70 changes: 65 additions & 5 deletions build-gridappsd-container
Original file line number Diff line number Diff line change
@@ -1,7 +1,67 @@
docker pull gridappsd/gridappsd_base:master
#!/usr/bin/env python3

./gradlew clean
rm -rf gov.pnnl.goss/gridappsd/generated
./gradlew export
"""
Script for building the gridappsd container.

docker build --no-cache --network=host -t gridappsd:local .
This script pulls the gridappsd_base docker image, cleans the project, exports the project, and builds the gridappsd container.

Usage:
python build-gridappsd-container <base_version> [--output_version <output_version>]

Arguments:
base_version (str): The version of the gridappsd_base docker image.
output_version (str, optional): The output tag version for local development. Default is "local".

Example:
python build-gridappsd-container.py 2.3.0 --output_version 2.3.1

"""

import argparse
import subprocess
import shutil


def execute(cmd: str | list[str]):
"""
Executes a command in the shell and prints the output.

Args:
cmd (str | list[str]): The command to execute. If a string, it will be split into a list of arguments.

Raises:
subprocess.CalledProcessError: If the command returns a non-zero exit code.

"""
if isinstance(cmd, str):
cmd = cmd.split(" ")

with subprocess.Popen(cmd, stdout=subprocess.PIPE, universal_newlines=True) as p:
for line in iter(p.stdout.readline, ""):
if line.strip():
print(line.strip())

p.wait()
if p.returncode:
raise subprocess.CalledProcessError(p.returncode, cmd=" ".join(cmd))



if __name__ == '__main__':

parser = argparse.ArgumentParser()

parser.add_argument("base_version",
help="The gridappsd_base docker image version")
parser.add_argument("--output_version", default="local",
help="The output tag version for local development")

opts = parser.parse_args()

base_version = opts.base_version

execute(f"docker pull gridappsd/gridappsd_base:{opts.base_version}")
execute("./gradlew clean")
shutil.rmtree("gov.pnnl.goss/gridappsd/generated", ignore_errors=True)
execute("./gradlew export")
execute(f"docker build --build-arg GRIDAPPSD_BASE_VERSION=:{opts.base_version} --no-cache --network=host -t gridappsd:{opts.output_version} .")
Binary file not shown.
Binary file not shown.
11 changes: 8 additions & 3 deletions entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,14 @@ if [ "$1" = "gridappsd" ]; then
sudo pip install -q --disable-pip-version-check -r $reqfile
done

# Run tail -f /dev/null to keep the container running and waiting for connection
echo "[Entrypoint] Waiting for connection"
tail -f /dev/null

if [ "${AUTOSTART:-0}" != "0" ]; then
/gridappsd/run-gridappsd.sh
else
# Run tail -f /dev/null to keep the container running and waiting for connection
echo "[Entrypoint] Waiting for connection"
tail -f /dev/null
fi
elif [ "$1" = "version" -o "$1" = "-v" -o "$1" = "--version" ]; then
echo -n "version: "
cat /gridappsd/dockerbuildversion.txt
Expand Down
15 changes: 10 additions & 5 deletions gov.pnnl.goss.gridappsd/bnd.bnd
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,18 @@
osgi.enroute.base.api,\
org.mockito.mockito-all,\
httpcore,\
cimhub.lib;version=0.2.4,\
cimhub.lib;version=2.0.3,\
httpclient,\
com.bigdata.rdf,\
proven-client;version=0.3,\
proven-message;version=0.4,\
com.nimbusds.nimbus-jose-jwt-dependencies

org.glassfish.jersey.core.jersey-client;version=2.26,\
org.glassfish.jersey.core.jersey-common;version=2.26,\
org.glassfish.jersey.media.jersey-media-json-jackson;version=2.26.0,\
proven-client;version=0.2.5,\
proven-message;version=0.5,\
com.nimbusds.nimbus-jose-jwt-dependencies,\
org.apache.servicemix.bundles.poi;version=3.17,\
org.apache.commons.commons-collections4;version=4.4

-plugin org.apache.felix.dm.annotation.plugin.bnd.AnnotationPlugin;log=debug

-sub: *.bnd
Expand Down
2 changes: 2 additions & 0 deletions gov.pnnl.goss.gridappsd/conf/org.ops4j.pax.logging.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,5 @@ log4j.additivity.org.apache.activemq = false
log4j.logger.org.apache.http = WARN, file
log4j.additivity.org.apache.http = false

log4j.category.pnnl.goss.core.security = WARN, file

Loading