Compare commits

...

470 Commits

Author SHA1 Message Date
Nicolas Arenas e455e6228c updated control
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
ogcllient/pipeline/head This commit looks good Details
2025-04-29 15:41:19 +02:00
Manuel Aranda Rosales ed13a7adec Deleted test command
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
2025-04-23 17:42:36 +02:00
Manuel Aranda Rosales 4a9749c97c Updated changelog
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
2025-04-23 17:29:05 +02:00
Manuel Aranda Rosales fbb694581e Updated ogAgent ping updatedAt. Fixed server date
testing/ogcore-api/pipeline/head This commit looks good Details
2025-04-23 17:19:35 +02:00
Nicolas Arenas 8d61a564a4 Add cronjob to check client status
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
2025-04-22 11:08:37 +02:00
Manuel Aranda Rosales 6a24fa1017 Merge pull request 'develop' (#29) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
Reviewed-on: #29
2025-04-16 11:58:32 +02:00
Manuel Aranda Rosales 39a78feabe Merge branch 'main' into develop
testing/ogcore-api/pipeline/pr-main Build queued... Details
testing/ogcore-api/pipeline/head There was a failure building this commit Details
ogcore-debian-package/pipeline/head This commit looks good Details
2025-04-16 11:58:03 +02:00
Manuel Aranda Rosales c259dc6b32 Added changelog
testing/ogcore-api/pipeline/pr-main Build started... Details
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-16 11:56:35 +02:00
Manuel Aranda Rosales 154472ac30 refs #1923. Fixed bug create imagen processor
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-16 11:54:09 +02:00
Manuel Aranda Rosales 351f952cba Merge pull request 'develop' (#27) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
Reviewed-on: #27
2025-04-11 12:00:09 +02:00
Manuel Aranda Rosales aaa8854839 Merge branch 'main' into develop
testing/ogcore-api/pipeline/pr-main This commit looks good Details
2025-04-11 11:55:14 +02:00
Manuel Aranda Rosales b1fbc4787a Changed CHANGELOG
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main There was a failure building this commit Details
2025-04-11 09:08:20 +02:00
Manuel Aranda Rosales 0cce7ff52d Some improvements. Sync multi clients ogBoot. Added base64 encode run script
testing/ogcore-api/pipeline/head This commit looks good Details
2025-04-11 08:14:07 +02:00
Nicolas Arenas eec19314ee Allos to publish in main
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
2025-04-10 16:31:22 +02:00
Nicolas Arenas be23dd538b Allos to publish in main
ogcore-debian-package/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-10 16:29:56 +02:00
Manuel Aranda Rosales 290cbb0ae0 Image improvements. Added name
testing/ogcore-api/pipeline/head This commit looks good Details
2025-04-10 09:54:50 +02:00
Manuel Aranda Rosales 9a96b04e7f refs #1864. Added ssh_port and user in imageRepository
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-10 09:53:28 +02:00
Manuel Aranda Rosales 4578f29349 refs #1857. Rename image API integration
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-10 09:50:59 +02:00
Manuel Aranda Rosales 6867f74098 refs #1858. Added description into deployImage selector
testing/ogcore-api/pipeline/head This commit looks good Details
2025-04-09 17:58:29 +02:00
Manuel Aranda Rosales 1bca31ec5f refs #1855. Fixed subnet DTOs clients property
testing/ogcore-api/pipeline/head This commit looks good Details
2025-04-08 15:43:14 +02:00
Manuel Aranda Rosales 927677ddc0 refs #1858. Added description into imageImageRepositort
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-08 15:42:53 +02:00
Manuel Aranda Rosales 097c6a710e refs #1851. Added script/funcionality to check PC availability
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-08 15:34:25 +02:00
Manuel Aranda Rosales b6c62996f5 refs #1855. Fixed subnet DTOs clients property
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-07 15:22:45 +02:00
Manuel Aranda Rosales beeda955ef OgRepo createImage improvements. Agent Status fixed
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-07 08:23:12 +02:00
Manuel Aranda Rosales d8306f78a7 refs #1797. Rename image. Versions added
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-03 08:41:59 +02:00
Manuel Aranda Rosales e119c14451 refs #1741. Syslog
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-02 21:28:39 +02:00
Manuel Aranda Rosales 912cf9b008 refs #1797. Rename image. Crete image
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-04-01 19:44:59 +02:00
Manuel Aranda Rosales bc036b65cf refs #1740. Run assistant logic
testing/ogcore-api/pipeline/head This commit looks good Details
2025-04-01 10:58:55 +02:00
Manuel Aranda Rosales 2d6b058eaf refs #1794. Updted assistants endpoints 2025-04-01 10:58:11 +02:00
Nicolas Arenas 421f5ff78e Adjust rules
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-27 09:21:27 +01:00
Nicolas Arenas e3d8a520ca Adjust rules
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
2025-03-27 09:15:35 +01:00
Nicolas Arenas 8b9328b6a3 Adjust rules
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-27 09:12:19 +01:00
Nicolas Arenas 46bd3a68dc Update Jenkinsfile
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
2025-03-27 09:04:22 +01:00
Manuel Aranda Rosales 3eca490d0a Updated load default user command
testing/ogcore-api/pipeline/head There was a failure building this commit Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-26 21:54:39 +01:00
Manuel Aranda Rosales 52a0493285 Updated load default user command 2025-03-26 21:54:39 +01:00
Nicolas Arenas 24a414ab66 Add ogcore
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-26 18:17:40 +01:00
Nicolas Arenas 6b228b146b Updated ogcore
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-26 13:48:45 +01:00
Nicolas Arenas e646b4b1e9 Creates repo at install
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-26 13:46:16 +01:00
Manuel Aranda Rosales fbe20ba735 Fixed prod env web_profiler
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-26 08:42:07 +01:00
Manuel Aranda Rosales 9c8697740e Merge pull request 'develop' (#26) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
Reviewed-on: #26
2025-03-26 06:42:34 +01:00
Manuel Aranda Rosales 84d757415c Added changelog
testing/ogcore-api/pipeline/pr-main Build started... Details
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-03-26 06:41:20 +01:00
Manuel Aranda Rosales bbb9239f02 Merge branch 'develop' 2025-03-25 15:59:07 +01:00
Nicolas Arenas 27615adc98 Updated mercure endpoint for ogcore
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-20 10:39:28 +01:00
Nicolas Arenas aa62d31b62 Fixing some stuff for packaging
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-20 07:40:49 +01:00
Manuel Aranda Rosales a06a0998f9 Updated ogrepo sync funcionality
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-19 16:49:31 +01:00
Manuel Aranda Rosales 2f813099c5 Updated ogrepo sync funcionality
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-19 16:04:55 +01:00
Manuel Aranda Rosales a2e0ced906 refs #1731. New endpoint integration. Convert image to virtual
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-19 15:45:07 +01:00
Manuel Aranda Rosales 5be87008c4 refs #1701. Updated Sync with ogLive. Parse new data 2025-03-19 15:44:35 +01:00
Nicolas Arenas 7cc0a44650 Fix typo in Jenkinsfile
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag This commit looks good Details
2025-03-19 12:15:29 +01:00
Nicolas Arenas 18f3512e5b jenkins_upload_packages (#25)
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
Updates Jenkinsfile to upload packages to repo if they come from release

Reviewed-on: #25
refers #1313
2025-03-19 12:11:36 +01:00
Manuel Aranda Rosales 1f4a88df0f Refactor Images/Repositories modules
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-18 17:11:13 +01:00
Nicolas Arenas dd81706e18 Fix Jenksfile for merge
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
2025-03-18 09:06:44 +01:00
Manuel Aranda Rosales ec7006db9a Refactor transferImages
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-18 08:42:25 +01:00
Nicolas Arenas 7b186b55d6 Update Jenkinsfile for debian
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
testing/ogcore-api/pipeline/pr-main There was a failure building this commit Details
ogcore-debian-package/pipeline/head Something is wrong with the build of this commit Details
2025-03-18 01:43:54 +01:00
Manuel Aranda Rosales c2fed1fb15 Refactor transferImages
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-17 16:51:33 +01:00
Manuel Aranda Rosales b41c489ce3 Refactor transferImages
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-17 16:48:29 +01:00
Nicolas Arenas e4287b97a6 - Expose port in docker container
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
oggui-debian-package/pipeline/tag Build started... Details
- Update changelog
2025-03-17 14:00:36 +01:00
Nicolas Arenas 56ff5c0936 updated changelog
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
oggui-debian-package/pipeline/tag Build started... Details
2025-03-17 13:36:17 +01:00
Nicolas Arenas b850940b43 fix_mercure_in_containers (#23) refer #1717
testing/ogcore-api/pipeline/head This commit looks good Details
Updates docker and nginx configuration in main to expose services behind  nginx
Reviewed-on: #23
2025-03-17 13:31:30 +01:00
Nicolas Arenas 1dea1b56cf Updated default.conf for container, nginx as secure proxypass
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-17 11:19:11 +01:00
Manuel Aranda Rosales 4a76186e97 Test refactor transferImage
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-17 08:55:42 +01:00
Nicolas Arenas ca79698e87 add proxy to reach mercure server
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-14 11:27:21 +01:00
Nicolas Arenas 14f662a2a6 add proxy to reach mercure server
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-14 11:12:23 +01:00
Nicolas Arenas 5373feed3c add proxy to reach mercure server
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-14 10:53:16 +01:00
Nicolas Arenas c6becd3bbd Updates debian changelog
ogcore-debian-package/pipeline/head Something is wrong with the build of this commit Details
ogcore-debian-package/pipeline/tag There was a failure building this commit Details
2025-03-14 00:45:35 +01:00
Nicolas Arenas 3b854f822e Fix typo
ogcore-debian-package/pipeline/head This commit looks good Details
2025-03-14 00:03:59 +01:00
Nicolas Arenas 57ad3b849c Fix typo
ogcore-debian-package/pipeline/head There was a failure building this commit Details
2025-03-13 23:44:13 +01:00
Nicolas Arenas fc91dd08ac Fix typo
ogcore-debian-package/pipeline/head There was a failure building this commit Details
2025-03-13 23:39:34 +01:00
Nicolas Arenas 6ce1f99a3e Publishing packages
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head There was a failure building this commit Details
2025-03-13 21:51:09 +01:00
Nicolas Arenas 02542d23e1 Add composer requirement for build package
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
2025-03-13 20:34:25 +01:00
Nicolas Arenas 24f03e4f01 Add Jenkinsfile to build package
testing/ogcore-api/pipeline/head This commit looks good Details
ogcore-debian-package/pipeline/head This commit looks good Details
2025-03-13 20:18:46 +01:00
Nicolas Arenas eb2c366e59 Removing nginx dependency to build debian package
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-13 20:15:54 +01:00
Nicolas Arenas 1f8dedb274 Delete old DEBIAN repository
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-13 16:51:27 +01:00
Nicolas Arenas 4dbedd28d6 Added debian packaging, refs #1706
testing/ogcore-api/pipeline/head This commit looks good Details
Reviewed-on: #22
2025-03-13 16:46:16 +01:00
Manuel Aranda Rosales 88ffad3841 Merge branch 'main' into develop
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-13 14:38:33 +01:00
Manuel Aranda Rosales 010a7f917d Fixed test. Removed Mercure from test env
testing/ogcore-api/pipeline/tag This commit looks good Details
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-13 14:35:48 +01:00
Manuel Aranda Rosales 721ad0d591 Fixed test. Removed Mercure from test env
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-13 14:34:53 +01:00
Manuel Aranda Rosales 8bc9cb1006 refs #1702. Updated ogLive sync. Deleted wrong or uninstalled oglives
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-03-13 12:55:49 +01:00
Manuel Aranda Rosales 663b0d1928 refs #1671. Udpated deploy method type. Added udpcast-direct'
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-13 11:11:15 +01:00
Manuel Aranda Rosales 4051497761 refs #1693. Convert Image. Webhook updated.
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-12 17:35:24 +01:00
Nicolas Arenas 5a63a1fb88 Update changelog for 0.9.2 release
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
2025-03-12 09:48:53 +01:00
Manuel Aranda Rosales 868a015902 Merge branch 'main' into develop 2025-03-12 09:23:29 +01:00
Manuel Aranda Rosales b534738587 Updated changelog
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-12 09:23:04 +01:00
Nicolas Arenas f94f8fe3e5 Add mercure service to docker-compose for deploy
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-12 09:19:39 +01:00
Manuel Aranda Rosales 94721d4371 Updated and fixed cancel P2p transmission
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-12 09:05:04 +01:00
Manuel Aranda Rosales fca9bb3ae3 refs #1693. Convert Image. Experimental commit
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-12 08:30:15 +01:00
Manuel Aranda Rosales b9e894f2d0 refs #1692. Import Image. Changes in logic
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-12 08:25:45 +01:00
Manuel Aranda Rosales 7c37bd418a refs #1692. Import Image. Changes
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-11 17:37:44 +01:00
Manuel Aranda Rosales 350dcd1d24 refs #1692. Import Image.
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-11 17:21:11 +01:00
Manuel Aranda Rosales dc9e21b61e refs #1693. Convert Image. Refactor old code
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-11 17:09:36 +01:00
Manuel Aranda Rosales b180d32843 refs #1692. Import Image. Refactor old code
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-11 15:49:07 +01:00
Manuel Aranda Rosales ece5763f0a Merge pull request 'develop' (#21) from develop into main
testing/ogcore-api/pipeline/head There was a failure building this commit Details
testing/ogcore-api/pipeline/tag This commit looks good Details
Reviewed-on: #21
2025-03-06 07:47:29 +01:00
Manuel Aranda Rosales b0bf22a2eb Modified changelog
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main Build started... Details
2025-03-05 17:25:48 +01:00
Manuel Aranda Rosales 2f8b4bb320 Some improvements. Fixed multi select actions
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-05 17:21:57 +01:00
Manuel Aranda Rosales e06f681464 refs #1644. Cancel deployImage action
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-03-05 17:20:37 +01:00
Manuel Aranda Rosales 629da7ca1a Updated test phunit.xml
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-05 10:41:16 +01:00
Manuel Aranda Rosales 73b5914baa Updated test
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-05 10:34:02 +01:00
Manuel Aranda Rosales 6ed2d7a936 Merge branch 'main' into develop 2025-03-05 09:33:54 +01:00
Manuel Aranda Rosales 1e76956b96 Fixed phpxml
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-03-05 09:26:28 +01:00
Manuel Aranda Rosales a0e8dc2297 Fixed phpxml
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-05 09:22:59 +01:00
Manuel Aranda Rosales 0ecc69e362 Changed test
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-05 09:15:19 +01:00
Manuel Aranda Rosales a5d58fa78d Changed repoClient funcionality. New filters added
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-05 09:05:49 +01:00
Manuel Aranda Rosales 70bf6fc534 updated .env.prod
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-04 14:42:33 +01:00
Manuel Aranda Rosales 0cf373303a Updated migrations
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-04 12:53:05 +01:00
Manuel Aranda Rosales b04932cea2 Changed commands output to SUCCESS
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-03 09:25:09 +01:00
Manuel Aranda Rosales 90c84e4a9f Added userAdminCommand
testing/ogcore-api/pipeline/head This commit looks good Details
2025-03-03 09:14:00 +01:00
Manuel Aranda Rosales 8e21a10361 Updated groups paginator
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-28 10:58:54 +01:00
Manuel Aranda Rosales 6b26b78995 refs #1567. New subnet field: 'dns'
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-28 09:12:44 +01:00
Manuel Aranda Rosales b3b3bf892d refs #1558. Add client/subnet new UX modal
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-27 11:12:27 +01:00
Manuel Aranda Rosales a00dc7a59f refs #1555. Changes eventListener Mercure
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-25 08:48:53 +01:00
Manuel Aranda Rosales d881c763cf refs #1603. Backup image changes
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-02-21 13:16:04 +01:00
Manuel Aranda Rosales c3ebc64264 refs #1603. Backup image changes
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-21 12:49:59 +01:00
Manuel Aranda Rosales 934a1f1853 Merge branch 'main' into develop 2025-02-21 11:04:58 +01:00
Manuel Aranda Rosales ba8cdf81f7 Fixed bugs in deployImage. Chaged status timeout
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2025-02-21 11:02:57 +01:00
Manuel Aranda Rosales 3ebe5cb1bc refs #1603. OGrepo backupImage integration
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-21 10:53:36 +01:00
Manuel Aranda Rosales d2961b4439 Merge remote-tracking branch 'refs/remotes/origin/develop' into develop
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-20 16:44:08 +01:00
Manuel Aranda Rosales 560559bba9 refs #1555. Install Mercure 2025-02-20 16:17:13 +01:00
Nicolas Arenas 704b844d7e refs #1570 Adds script to create Debian package 2025-02-20 14:14:06 +01:00
Nicolas Arenas 9292be3feb refs #1570 Adds DEBIAN folder to create deb package of ogcore 2025-02-20 14:12:37 +01:00
Manuel Aranda Rosales f9feafa9b8 Changed monolog prod stderror 2025-02-20 13:17:02 +01:00
Manuel Aranda Rosales 2738ae8b75 Merge branch 'hotfix-timeout' into develop 2025-02-20 13:01:03 +01:00
Manuel Aranda Rosales 7098d4fcb1 fixed ip wrong check
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-20 13:00:41 +01:00
Manuel Aranda Rosales ac8f6d1028 Added new user admin command 2025-02-20 09:30:21 +01:00
Manuel Aranda Rosales 819ec6a25d Added new user admin command 2025-02-20 09:26:15 +01:00
Manuel Aranda Rosales aedffb5596 Added new user admin command 2025-02-20 08:55:18 +01:00
Manuel Aranda Rosales 051bdeb646 Fixed ogAgent status timeout
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-18 13:30:13 +01:00
Manuel Aranda Rosales 9089224522 refs #1523. Hierarchy networkSettings.
testing/ogcore-api/pipeline/tag This commit looks good Details
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-17 14:43:15 +01:00
Manuel Aranda Rosales 546546bb42 refs #1523. Hierarchy networkSettings
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-17 13:11:49 +01:00
Manuel Aranda Rosales ca3e547b56 Some improvements. Added new filters
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-02-17 09:13:48 +01:00
Manuel Aranda Rosales 4fd3a78c0a refs #1523. Hierarchy networkSettings
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-02-14 12:43:30 +01:00
Manuel Aranda Rosales ce61d3cfc2 refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-14 12:41:28 +01:00
Manuel Aranda Rosales 083aa9db7e FIxed client/trace constraint onDelete
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-02-14 09:38:54 +01:00
Manuel Aranda Rosales 64e721cd09 Fixed test
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-14 07:59:51 +01:00
Manuel Aranda Rosales 626dc276a8 Added loaded trace command
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-02-14 07:46:01 +01:00
Manuel Aranda Rosales b98d6d2be8 Added loaded trace command
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-02-14 07:42:29 +01:00
Manuel Aranda Rosales de165935e0 refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 17:31:26 +01:00
Manuel Aranda Rosales 6772c9d191 refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 16:48:53 +01:00
Manuel Aranda Rosales 60f6348eca refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 16:47:10 +01:00
Manuel Aranda Rosales e9b982ffe4 refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 16:39:56 +01:00
Manuel Aranda Rosales 947817daae refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 16:22:56 +01:00
Manuel Aranda Rosales b2f5c3802a refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 16:00:30 +01:00
Manuel Aranda Rosales b94e6e2cf2 refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 15:57:42 +01:00
Manuel Aranda Rosales d61be99b84 refs #1516. Changed form and global import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 15:42:18 +01:00
Manuel Aranda Rosales 7ede1a646a refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 08:38:22 +01:00
Manuel Aranda Rosales 3ed65f0668 refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 08:36:26 +01:00
Manuel Aranda Rosales a448fb071d refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 07:59:38 +01:00
Manuel Aranda Rosales acf772f139 refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-13 07:45:57 +01:00
Manuel Aranda Rosales c381b32d09 refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-12 19:20:18 +01:00
Manuel Aranda Rosales ed614c4ac4 refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-12 19:10:29 +01:00
Manuel Aranda Rosales dde936be67 refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-12 19:03:42 +01:00
Manuel Aranda Rosales 7ff5c87884 refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-12 17:14:39 +01:00
Manuel Aranda Rosales 28914fd7de refs #1472. Changes in images and imageRepo
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-10 13:59:37 +01:00
Manuel Aranda Rosales dc68c8eb43 Testing new ogRepo import data
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-10 10:30:54 +01:00
Manuel Aranda Rosales 31657113a8 Testing new ogRepo import data
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-10 10:16:02 +01:00
Manuel Aranda Rosales 3bde0333d7 Testing new ogRepo import data
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-10 10:06:18 +01:00
Manuel Aranda Rosales 81bb1c5268 refs #1480. Fixed test
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-10 08:15:20 +01:00
Manuel Aranda Rosales d5c75f6c45 refs #1473. Changes in ogRepo. Import
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-07 11:58:28 +01:00
Manuel Aranda Rosales 95b85ccca1 refs #1471. Changed relationship image-imageRepositories
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-06 18:27:50 +01:00
Manuel Aranda Rosales 10a89da948 Merge branch 'main' into develop 2025-02-06 14:50:40 +01:00
Manuel Aranda Rosales 935240809e Added CHANGELOG 2025-02-06 14:50:22 +01:00
Manuel Aranda Rosales afffe5cdb1 Fixed test
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2025-02-04 10:36:31 +01:00
Manuel Aranda Rosales 391c455dd0 Merge pull request 'develop' (#20) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
Reviewed-on: #20
2025-02-04 09:34:28 +01:00
Manuel Aranda Rosales d157d98fb3 Merge branch 'main' into develop
testing/ogcore-api/pipeline/pr-main There was a failure building this commit Details
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-04 09:16:51 +01:00
Manuel Aranda Rosales e0dfcd0f63 Updated repo webhook
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main There was a failure building this commit Details
2025-02-03 21:47:41 +01:00
Manuel Aranda Rosales f22fde5ecd Updated repo webhook
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 18:26:14 +01:00
Manuel Aranda Rosales f3eb00fa95 Updated repo webhook
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 18:08:57 +01:00
Manuel Aranda Rosales 89d9e07521 Updated repo webhook
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 17:13:55 +01:00
Manuel Aranda Rosales e3c543c6c1 Added isGlobal property in Image
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 15:02:44 +01:00
Manuel Aranda Rosales 6d3604565b Updated repo deleted endpoint
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 13:08:24 +01:00
Manuel Aranda Rosales 2cadfbf1e3 Updated repo/images UX
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 11:28:11 +01:00
Manuel Aranda Rosales cd94a3065e Added logger into repo connection
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 11:13:09 +01:00
Manuel Aranda Rosales 627bf75468 ogRepo new endpoints. Export/Import image
testing/ogcore-api/pipeline/head This commit looks good Details
2025-02-03 10:54:00 +01:00
Manuel Aranda Rosales 3c7fa26e32 ogRepo new endpoints. Export/Import image
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-31 13:27:03 +01:00
Manuel Aranda Rosales e421a38079 ogRepo new endpoints. Export/Import image
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-31 09:02:24 +01:00
Manuel Aranda Rosales 5728fb4d94 Updated torrent deployMode
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-30 11:11:38 +01:00
Manuel Aranda Rosales 820edfdff0 Change in torrent modes
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-29 17:39:27 +01:00
Manuel Aranda Rosales 34c8fe2d1a Fixed ogBoot postAction controller
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-28 15:03:21 +01:00
Manuel Aranda Rosales b4d3ff5e89 Fixed ogBoot postAction controller
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-28 09:51:40 +01:00
Manuel Aranda Rosales 20c243fb52 refs #1353. Added multiple commands logic. Updated endpoints
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-27 13:59:37 +01:00
Manuel Aranda Rosales 2aa34ebec4 Merge pull request 'refs #1288. Change folder name' (#19) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
Reviewed-on: #19
2025-01-15 15:52:58 +01:00
Manuel Aranda Rosales 25d6da01fc refs #1288. Change folder name
testing/ogcore-api/pipeline/pr-main Build queued... Details
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2025-01-15 13:24:43 +01:00
Manuel Aranda Rosales 9677cb7b46 Added OG_LOG_IP env var
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2025-01-14 13:14:24 +01:00
Manuel Aranda Rosales a8d22cfac0 Merge pull request 'develop' (#18) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
Reviewed-on: #18
2025-01-13 15:24:08 +01:00
Manuel Aranda Rosales 74cb26d705 refs #1324. Added new logs
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main Build started... Details
2025-01-13 13:04:05 +01:00
Manuel Aranda Rosales 46999dfbc7 refs #1089. Partition assistant. Partition cpt=0
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-09 12:47:15 +01:00
Manuel Aranda Rosales 2b8ea31599 refs #1288. Menu improvements. Fixed test
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-01-09 12:46:33 +01:00
Manuel Aranda Rosales 4efa843445 refs #1324. CustomLineFormatter
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-01-09 08:13:06 +01:00
Manuel Aranda Rosales 166c629906 refs #1323. Monolog changes
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2025-01-09 08:12:18 +01:00
Manuel Aranda Rosales 40c34a0112 refs #1088. Deploy Image. Improvements
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-07 18:02:51 +01:00
Manuel Aranda Rosales 59ce82ef43 refs #1319. Default menu logic
testing/ogcore-api/pipeline/head This commit looks good Details
2025-01-07 17:58:43 +01:00
Manuel Aranda Rosales 825387d881 refs #1281. Created filter OU added all clients
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-20 12:02:55 +01:00
Manuel Aranda Rosales fb381b9627 refs #1287. Created menu templates and controller
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-20 08:33:49 +01:00
Manuel Aranda Rosales 094ff7d34c Fixed tets
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-12-20 08:11:45 +01:00
Manuel Aranda Rosales 3ad5b23e67 refs #1287. Created menu templates and controller
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-12-20 07:57:57 +01:00
Manuel Aranda Rosales 4a26d7a880 Merge branch 'main' into develop 2024-12-16 11:38:31 +01:00
Manuel Aranda Rosales 20b2ea0429 Hotfix. Updated error in partition wront CPT
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-16 11:38:10 +01:00
Manuel Aranda Rosales 38bf6e23ad refs #1288. Updated Menu entity and API
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-16 10:59:34 +01:00
Manuel Aranda Rosales 19c94561cd Improvements in ogLive
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-11 16:58:17 +01:00
Manuel Aranda Rosales 529d1c37ca Improvements in ogLive
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-11 16:51:43 +01:00
Manuel Aranda Rosales 6329ae9d2b refs #1091. DeployImage Multicast mode
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-11 08:45:01 +01:00
Manuel Aranda Rosales 8949dcd865 refs #1089. Updates partition assistant
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-10 08:32:36 +01:00
Manuel Aranda Rosales 7b9650d804 DTO improvements
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-12-05 14:56:23 +01:00
Manuel Aranda Rosales 0002ea4ccc Added router in subnet. Advanced bootfile changes, and partition assistant updates
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-05 13:05:19 +01:00
Manuel Aranda Rosales 7856741928 Auto. clients creation
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-04 18:52:43 +01:00
Manuel Aranda Rosales 2b90e2618d Auto. clients creation
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-04 18:28:36 +01:00
Manuel Aranda Rosales e27e4b408f refs #917. Partition assistant
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-04 08:51:21 +01:00
Manuel Aranda Rosales 0f52548284 refs #1089. Partition assistant. Reboot and power-off ogagent
testing/ogcore-api/pipeline/head This commit looks good Details
2024-12-03 11:24:48 +01:00
Manuel Aranda Rosales dd9cd5e2cf Added ogAgent webhook logic in started, stoped, loggin and logout
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-11-27 16:48:21 +01:00
Manuel Aranda Rosales e3b5bc202c Updated ogLive API. OgAgent deploy-image fixed bug in partitionInfo
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-11-27 11:21:03 +01:00
Manuel Aranda Rosales 82c42f04f5 Updated softwareProfile end of line
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-11-27 08:57:39 +01:00
Manuel Aranda Rosales c0f825f937 Fixed test
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-11-26 14:57:46 +01:00
Manuel Aranda Rosales e245a975a3 Merge pull request 'develop' (#16) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
Reviewed-on: #16
2024-11-26 10:55:54 +01:00
Manuel Aranda Rosales 54c0af3a24 Merge main and solve conflicts
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main Build started... Details
2024-11-26 10:51:22 +01:00
Manuel Aranda Rosales 49259255dd Updated pxe logic 2024-11-26 10:46:37 +01:00
Manuel Aranda Rosales 48b7225c01 Added monolog. Updated agent webhook
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-25 20:06:09 +01:00
Manuel Aranda Rosales 5c85d687e6 Fixed status when image fail
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-25 11:53:49 +01:00
Manuel Aranda Rosales 942c967d44 Fixed agent status connection
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-25 09:13:39 +01:00
Manuel Aranda Rosales d3b2da5f1b Fixed agent status connection
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-25 08:28:16 +01:00
Manuel Aranda Rosales 4638c07416 Big updates dhcp subnets
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-11-22 12:27:12 +01:00
Manuel Aranda Rosales 1c13c8fe7d Merge pull request 'Fixed ogAgent webhook data error 500' (#15) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
Reviewed-on: #15
2024-11-22 10:46:12 +01:00
Manuel Aranda Rosales c33528f78f Fixed ogAgent webhook data error 500
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main Build started... Details
2024-11-22 10:41:40 +01:00
Manuel Aranda Rosales d11e6e0873 Merge pull request 'develop' (#14) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
Reviewed-on: #14
2024-11-21 14:57:10 +01:00
Manuel Aranda Rosales 4636a109d8 Fixed subnet optional params
testing/ogcore-api/pipeline/pr-main Build queued... Details
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-21 14:55:47 +01:00
Manuel Aranda Rosales bc5dd3060e Fixed subnet optional params 2024-11-21 14:55:28 +01:00
Nicolas Arenas d06f29eda6 Merge branch 'develop'
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-20 19:52:10 +01:00
Nicolas Arenas f18c36b523 Remove build statements from docker deployment
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-11-20 19:51:51 +01:00
Manuel Aranda Rosales 4aeace65b5 Merge pull request 'develop' (#13) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
Reviewed-on: #13
2024-11-20 19:26:16 +01:00
Manuel Aranda Rosales d3e7822206 Fix merge
testing/ogcore-api/pipeline/pr-main This commit looks good Details
2024-11-20 19:25:11 +01:00
Manuel Aranda Rosales a2f35e8927 Update docker-compose-deploy.yml
testing/ogcore-api/pipeline/head This commit looks good Details
Fix tipo
2024-11-20 19:24:00 +01:00
Nicolas Arenas fb0af325c2 Fix merge
testing/ogcore-api/pipeline/head This commit looks good Details
2024-11-20 19:14:45 +01:00
Nicolas Arenas fed369eb1f Improve Jenkinsfile
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
testing/ogcore-api/pipeline/pr-main This commit looks good Details
2024-11-20 18:40:11 +01:00
Manuel Aranda Rosales b0efe07977 Improvements in ogBoot API
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 18:16:29 +01:00
Nicolas Arenas 81da6b7a34 Fix typo
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
2024-11-20 18:05:53 +01:00
Nicolas Arenas 1e998c9a3a Stop and delete docke containers before running
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 18:04:41 +01:00
Manuel Aranda Rosales 38eb3775f1 Updated database schema. Removed old versions
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
2024-11-20 17:43:42 +01:00
Nicolas Arenas eb5aff8e7f Updated Jankinsfile to send email first
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 17:41:33 +01:00
Manuel Aranda Rosales 80b39db993 Updated database schema. Removed old versions
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 17:16:34 +01:00
Manuel Aranda Rosales 8094fdae3e Updated APIS, and general improvements
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 16:02:20 +01:00
Manuel Aranda Rosales 2f89e5bc57 Updated APIS, and general improvements 2024-11-20 16:02:20 +01:00
Nicolas Arenas 5c91265417 Remove debug stuff
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 14:55:56 +01:00
Nicolas Arenas 8a512f603f Publish release if TAG name exists
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-20 14:47:45 +01:00
Manuel Aranda Rosales 87d16e9d72 refs #1154. Fixed API env_vars protected var
testing/ogcore-api/pipeline/head There was a failure building this commit Details
testing/ogcore-api/pipeline/tag There was a failure building this commit Details
2024-11-18 10:08:20 +01:00
Manuel Aranda Rosales 404ee80d68 refs #1154. API env_vars
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 19:02:10 +01:00
Nicolas Arenas 116a773b6e Add volumes volume files
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 14:30:59 +01:00
Nicolas Arenas ace170f1c2 Revert deploy
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 14:29:22 +01:00
Manuel Aranda Rosales 0ace220ff6 refs #1154. Added env.json
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 14:27:07 +01:00
Manuel Aranda Rosales 805fd70026 Improvements in trace
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 09:39:56 +01:00
Manuel Aranda Rosales 03e36f6218 refs #1087. CreateImage. Output and webhooks controllers
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 09:39:35 +01:00
Manuel Aranda Rosales aee03d6a85 refs #1088. Deploy Image
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 09:09:35 +01:00
Manuel Aranda Rosales e0795743e7 refs #1151. Integracion ogRepository
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 09:06:28 +01:00
Manuel Aranda Rosales a0ae000dca refs #1087. CreateImage
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-15 09:04:19 +01:00
Manuel Aranda Rosales 0545add493 refs #1087. CreateImage. First commit
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-11-07 15:04:38 +01:00
Nicolas Arenas 3bfd65e909 Update yaml to deploy shared volume between php and nginx container
testing/ogcore-api/pipeline/tag This commit looks good Details
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2024-11-04 12:02:35 +01:00
Manuel Aranda Rosales 3d0b4f25e2 refs #1082. ImageRepository Test
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-30 10:53:25 +01:00
Manuel Aranda Rosales 50f2fff71e Merge branch 'main' into develop
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-29 17:48:26 +01:00
Manuel Aranda Rosales 738dc55503 Fixed UDS API bug
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/tag This commit looks good Details
2024-10-29 17:29:09 +01:00
Manuel Aranda Rosales 5a7afc23b9 refs #1081. API ImageRepository. Edit Image API with this
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-29 17:13:10 +01:00
Nicolas Arenas 9e4eebb38c Creates compose to deploy with installer
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-29 17:05:31 +01:00
Manuel Aranda Rosales edee27994b refs #1081. API ImageRepository. Edit Image API with this
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-29 16:57:30 +01:00
Manuel Aranda Rosales 5dc8ffae8c refs #1083. New entity ImageRepository 2024-10-29 16:56:23 +01:00
Nicolas Arenas 0908f1bbe9 Fixes latest tag problem
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-25 11:58:05 +02:00
Manuel Aranda Rosales 3ee70ef7e6 Merge pull request 'develop' (#12) from develop into main
testing/ogcore-api/pipeline/head This commit looks good Details
Reviewed-on: #12
2024-10-25 11:05:19 +02:00
Manuel Aranda Rosales 45fd79d2bc Removed service. DTO input changes
testing/ogcore-api/pipeline/head This commit looks good Details
testing/ogcore-api/pipeline/pr-main Build started... Details
2024-10-25 10:58:18 +02:00
Nicolas Arenas 6da4997f51 Add email notification to pipeline
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-25 10:09:26 +02:00
Manuel Aranda Rosales d4f8acae81 Updated AgentController partition size
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-25 09:58:31 +02:00
Manuel Aranda Rosales 6601a755a7 Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:54:21 +02:00
Manuel Aranda Rosales 8c30def21a Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:49:55 +02:00
Manuel Aranda Rosales 354b18c068 Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:47:24 +02:00
Manuel Aranda Rosales 4c76b9a71c Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:44:14 +02:00
Manuel Aranda Rosales 38cb3e7098 Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:42:13 +02:00
Manuel Aranda Rosales 1db829d9ff Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:35:42 +02:00
Manuel Aranda Rosales 4973be6af6 Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:28:14 +02:00
Manuel Aranda Rosales f13731a047 Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:23:41 +02:00
Manuel Aranda Rosales 104d1dc8ac Test ogdClient
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:16:50 +02:00
Manuel Aranda Rosales 436c297b73 Fixed bugs
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 10:08:41 +02:00
Manuel Aranda Rosales e9619575ae Added DTO client position into OU
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 09:56:27 +02:00
Nicolas Arenas 5c43c43342 Delete volume from docker compose template
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-23 09:23:07 +02:00
Nicolas Arenas bb37c7aea0 Change credentials
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-23 09:17:25 +02:00
Nicolas Arenas 8b8c57f8a4 Test to copy report back to jenkins
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-23 09:09:58 +02:00
Nicolas Arenas 77ad48f717 Adjust report directory 2024-10-23 09:09:58 +02:00
Nicolas Arenas ad64bf3861 Create report directory 2024-10-23 09:09:58 +02:00
Nicolas Arenas 0eeab3dc42 Create report directory 2024-10-23 09:09:58 +02:00
Nicolas Arenas e6024eb110 Generate stuff report before tests 2024-10-23 09:09:58 +02:00
Nicolas Arenas e675af2b24 Delete and post 2024-10-23 09:09:58 +02:00
Nicolas Arenas 541653689e Running test 2024-10-23 09:09:58 +02:00
Nicolas Arenas 231d729682 Running Tests 2024-10-23 09:09:58 +02:00
Nicolas Arenas 3bb426c6c3 Fix 2024-10-23 09:09:58 +02:00
Nicolas Arenas c9320fb658 Updated path 2024-10-23 09:09:58 +02:00
Nicolas Arenas 51500a4e35 Step 4 2024-10-23 09:09:58 +02:00
Nicolas Arenas 19f4430556 Install deps 2024-10-23 09:09:58 +02:00
Nicolas Arenas b077a9d5a7 Adds running steps 2024-10-23 09:09:58 +02:00
Nicolas Arenas dd031e033c Test 2024-10-23 09:09:58 +02:00
Nicolas Arenas dc894ad22b Explicit checkout 2024-10-23 09:09:58 +02:00
Nicolas Arenas c8e0fe69c6 Step 1 2024-10-23 09:09:58 +02:00
Nicolas Arenas 7bbf84cc21 Try comment out post condition 2024-10-23 09:09:58 +02:00
Nicolas Arenas 80f2242b6c Fix to push imagws 2024-10-23 09:09:58 +02:00
Nicolas Arenas d2e9732240 Fix 2024-10-23 09:09:58 +02:00
Nicolas Arenas 33025e84ab Xunit back to node 2024-10-23 09:09:58 +02:00
Nicolas Arenas 98f15df11d Miniaml changes 2024-10-23 09:09:58 +02:00
Nicolas Arenas d78e719a91 Fix typo 2024-10-23 09:09:58 +02:00
Nicolas Arenas 73fbd6b6f6 Modify Jenkinsfile to publish images 2024-10-23 09:09:58 +02:00
Manuel Aranda Rosales 835d461585 Added DTO client position into OU
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-23 08:43:21 +02:00
Manuel Aranda Rosales dce78eef29 refs #952. ogAgent. Create partition
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-23 08:03:55 +02:00
Manuel Aranda Rosales 0c94a1921e refs #952. First revision status endpoint ogAgent
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2024-10-22 22:20:21 +02:00
Manuel Aranda Rosales 756bea4844 refs #952. First revision status endpoint ogAgent
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2024-10-22 22:12:40 +02:00
Manuel Aranda Rosales 14ff759309 refs #952. First revision status endpoint ogAgent
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2024-10-22 22:07:27 +02:00
Manuel Aranda Rosales 4aa03d643e refs #952. First revision status endpoint ogAgent
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2024-10-22 21:36:38 +02:00
Manuel Aranda Rosales 31750fe663 refs #649. Integration ogBoot.Demo
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-22 18:26:51 +02:00
Manuel Aranda Rosales 3f933db43e Improvement APi DTO output
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-22 09:42:07 +02:00
Manuel Aranda Rosales 0ac01b8c4a refs #952. First revision status endpoint ogAgent
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-22 07:35:19 +02:00
Manuel Aranda Rosales ba65454c38 refs #649. Integration ogBoot.Demo 2024-10-22 07:34:34 +02:00
Manuel Aranda Rosales de5f719111 refs #955. Updates Partition/SW-P/SW
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-18 09:21:44 +02:00
Manuel Aranda Rosales a2171ceb47 refs #978. Image API updates 2024-10-18 09:20:33 +02:00
Manuel Aranda Rosales ef3bda1322 refs #658. Update obBoot sync parametrs 2024-10-18 09:19:11 +02:00
Manuel Aranda Rosales 88b3d8aaa9 refs #658. Updated webhook data
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-17 14:28:36 +02:00
Manuel Aranda Rosales 7e6a0a2a1b refs #955. Updated Partition API
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-17 13:36:33 +02:00
Manuel Aranda Rosales 5173dc81f0 refs #955. New database fields
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-17 09:04:34 +02:00
Manuel Aranda Rosales d5e36c6657 refs #955. New database fields
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-16 09:12:03 +02:00
Manuel Aranda Rosales f8bfffebf1 Updated partition and image input
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-15 07:37:05 +02:00
Manuel Aranda Rosales 4759f3e24f refs #614. Integration DHCP
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-14 13:18:19 +02:00
Manuel Aranda Rosales 8c57e61a57 refs #614. Integration DHCP
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-14 06:43:34 +02:00
Manuel Aranda Rosales 401898b262 Updated version. Removed test crt/key
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-10 09:30:44 +02:00
Manuel Aranda Rosales 5b7998d47b Added new certs
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 16:47:10 +02:00
Manuel Aranda Rosales 3c4d56727a Added new certs
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 16:43:07 +02:00
Manuel Aranda Rosales 0ccecb786e Change logic migration UDS
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 15:31:16 +02:00
Manuel Aranda Rosales 4ef9892472 Updated CORS open to test
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 11:09:40 +02:00
Manuel Aranda Rosales ecf406609a Created mock up login
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 10:15:36 +02:00
Manuel Aranda Rosales f39abdc2ba Created mock up login
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 09:46:33 +02:00
Manuel Aranda Rosales 5da12033e8 Created mock up login
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 09:44:47 +02:00
Manuel Aranda Rosales 8fba590e9c Created mock up login 2024-10-09 09:43:15 +02:00
Manuel Aranda Rosales c58afe873f Fixed controller info uds
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 09:32:14 +02:00
Manuel Aranda Rosales 5726fb0bae Test nginx conf
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 09:15:16 +02:00
Manuel Aranda Rosales 9dab268a80 Test nginx conf
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 08:59:27 +02:00
Manuel Aranda Rosales b8efa6a19f Test nginx conf
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 08:52:50 +02:00
Manuel Aranda Rosales 8806f0449c Test nginx conf
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-09 08:44:44 +02:00
Manuel Aranda Rosales 1cfd1fdfee Test ngin rewrite rule
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-08 18:40:52 +02:00
Manuel Aranda Rosales 8ff975743a Test endpoint
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-08 18:24:53 +02:00
Manuel Aranda Rosales 2ddaba51d9 Added image loader
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-08 17:42:51 +02:00
Manuel Aranda Rosales 07b6f55310 Added image loader
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-08 17:27:48 +02:00
Manuel Aranda Rosales 29a222bc96 Updated Open APi docu
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-08 17:04:11 +02:00
Manuel Aranda Rosales d3c43f4f81 Added default command loader OUs
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-08 17:00:12 +02:00
Manuel Aranda Rosales 1e2947b183 Added UDS info endpoint
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-08 16:39:10 +02:00
Manuel Aranda Rosales 37b21c85a4 Added TLS docker
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-10-08 16:20:43 +02:00
Manuel Aranda Rosales 7c90325471 Added MigrateImage in readme
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-08 12:32:16 +02:00
Manuel Aranda Rosales c32363c974 Updated Partition and Image. Added UDS endpoints
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-08 12:29:51 +02:00
Manuel Aranda Rosales ea35ddd1e4 Updated command script migration
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-07 11:30:44 +02:00
Manuel Aranda Rosales cdfab436d8 New validator text
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-04 10:32:27 +02:00
Manuel Aranda Rosales c14002e220 refs #759. Adding listener Trace
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-03 20:20:37 +02:00
Manuel Aranda Rosales 179f36ebef refs #725. Updated API Dto
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-03 08:58:25 +02:00
Manuel Aranda Rosales ca23d41241 refs #724. New field . RemotePc 2024-10-03 08:57:56 +02:00
Manuel Aranda Rosales feb239f3de refs #726. Added new fields OU ddbb integration UDS
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-01 16:19:40 +02:00
Manuel Aranda Rosales d135c74f8a refs #726. Integration UDS. Success Put info
testing/ogcore-api/pipeline/head This commit looks good Details
2024-10-01 15:05:25 +02:00
Manuel Aranda Rosales 4b3f55f631 Added new migration
testing/ogcore-api/pipeline/head This commit looks good Details
2024-09-30 15:10:48 +02:00
Manuel Aranda Rosales 3d78418415 Solve conflict. Added remoteCalendar
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-30 11:48:35 +02:00
Manuel Aranda Rosales d75712428d refs #725. Added RemoteCalendar into OrganizationalUnit 2024-09-30 11:45:25 +02:00
Manuel Aranda Rosales 4f1bfa04f6 Fixed conflicts and solved DTO bugs
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-30 11:37:36 +02:00
Manuel Aranda Rosales 4cfa700e91 Merge OGBoot branch
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-30 11:22:30 +02:00
Manuel Aranda Rosales 6be2832fe6 Merge DHCP and Actions branch
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-30 11:16:48 +02:00
Manuel Aranda Rosales 7ab7738f7e Merge branch 'feature/integration-dhcp' into develop 2024-09-30 11:14:31 +02:00
Manuel Aranda Rosales f6649231b6 refs #726. Temporal commit. Added UDS Service logic 2024-09-30 11:11:20 +02:00
Manuel Aranda Rosales 4ff77d7e2b refs #723. Updated CommandTask. Added clients 2024-09-27 12:43:38 +02:00
Manuel Aranda Rosales 04cee6c4c0 refs #758. Testing commandTask and commandGroups 2024-09-27 11:01:20 +02:00
Manuel Aranda Rosales ecd559391e refs #758. Testing commandTask and commandGroups 2024-09-27 10:58:57 +02:00
Manuel Aranda Rosales b0189d8d9e refs #758. Testing commandTask and commandGroups 2024-09-27 10:51:53 +02:00
Manuel Aranda Rosales 1750cbd60f refs #758. Testing commandTask and commandGroups 2024-09-26 16:11:31 +02:00
Manuel Aranda Rosales a7c70a287f refs #723. Delete attribute position 2024-09-26 12:48:50 +02:00
Manuel Aranda Rosales 38674081d9 refs #723. Fixed bug delete commandGroup 2024-09-26 12:44:16 +02:00
Nicolas Arenas 72361355c4 Merge pull request 'Integración pruebas unitarias con CI.' (#11) from helpers/ci-integration into main
testing/ogcore-api/pipeline/head This commit looks good Details
Reviewed-on: #11
2024-09-26 12:01:00 +02:00
Manuel Aranda Rosales 792eb8f7b9 refs #724. Added calendar filters 2024-09-26 12:00:50 +02:00
Manuel Aranda Rosales fc5fd7421b refs #724. Updated onDelete logic 2024-09-26 10:54:31 +02:00
Nicolas Arenas 440a5f8bf1 Adjust to copy the report
testing/ogcore-api/pipeline/pr-main This commit looks good Details
testing/ogcore-api/pipeline/head Something is wrong with the build of this commit Details
2024-09-25 18:42:18 +02:00
Nicolas Arenas ec86e867c3 Build container for CI
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 18:30:21 +02:00
Nicolas Arenas 77ef4aca3f Avoid using volumes for static content for jenkins 2024-09-25 18:28:46 +02:00
Nicolas Arenas 5f6e2e8610 Fixing typo as threshols are characters and not integers
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 18:01:07 +02:00
Manuel Aranda Rosales f928a1db11 refs #725. Added RemoteCalendar and RemoteCalendarRule APIs 2024-09-25 17:30:28 +02:00
Nicolas Arenas 7425b54940 Fix type
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 16:13:03 +02:00
Nicolas Arenas 3db25efbcf Clean workspace and add some comments
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 16:11:26 +02:00
Nicolas Arenas 64848705b9 Fixing typo in Jenkins
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 15:46:04 +02:00
Nicolas Arenas 4ca1c51e7a Fix typo collecting info
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 14:32:35 +02:00
Nicolas Arenas 784fbfe89c Collecting report after execute tests
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 14:29:40 +02:00
Nicolas Arenas 4523135041 Creating first Jenkinsfile for testing
testing/ogcore-api/pipeline/head There was a failure building this commit Details
2024-09-25 14:01:35 +02:00
Manuel Aranda Rosales 083ac514a8 refs #725. Added RemoteCalendar and RemoteCalendarRule APIs 2024-09-24 15:31:18 +02:00
Manuel Aranda Rosales bdd5093a6a refs #724. Added RemoteCalendar and RemoteCalendarRule entities 2024-09-24 11:07:33 +02:00
Manuel Aranda Rosales 1394f3855b refs #723. CommandEntity. Updated 'script' longtext' 2024-09-24 09:20:03 +02:00
Manuel Aranda Rosales 34c2144ffd refs #659. CommandGroup execute endpoint 2024-09-24 09:09:29 +02:00
Manuel Aranda Rosales d1105a1e89 refs #659. Trace API. New endpoint execute in command 2024-09-17 11:28:02 +02:00
Manuel Aranda Rosales b4f9f1e9bb refs #723. Added new entity Trace 2024-09-17 10:37:20 +02:00
Manuel Aranda Rosales 794237dd90 refs #659. CommandTask API 2024-09-17 10:00:32 +02:00
Manuel Aranda Rosales 0f0b047c85 refs #723. Added new entity CommandTask 2024-09-17 08:50:17 +02:00
Manuel Aranda Rosales d4101cda80 refs #723. Little bug in script name 2024-09-16 14:39:48 +02:00
Manuel Aranda Rosales 8141d581c8 refs #723. Included script to migrate commands 2024-09-16 14:31:52 +02:00
Manuel Aranda Rosales e7b1444446 refs #723. Included script to migrate commands 2024-09-16 14:30:37 +02:00
Manuel Aranda Rosales 1afe73bd09 refs #659. CommandGroup. Added 'add-command' endpoint 2024-09-16 13:55:57 +02:00
Manuel Aranda Rosales ad02456de6 refs #659. CommandGroup API 2024-09-16 13:31:37 +02:00
Manuel Aranda Rosales 05214bbd2e refs #723. First version commandGroup 2024-09-16 11:19:52 +02:00
Manuel Aranda Rosales 0219f28b5c wMerge branch 'main' into feature/actions 2024-09-16 10:52:05 +02:00
Manuel Aranda Rosales 939a15ad2a Updated scripts OU and Clients migration 2024-09-16 10:51:50 +02:00
Manuel Aranda Rosales d955a7f434 refs #723. Added migration command 2024-09-16 10:51:02 +02:00
Manuel Aranda Rosales 1883478bae refs #758. Testing command API 2024-09-16 09:18:17 +02:00
Manuel Aranda Rosales babd702f85 refs #659. Command API 2024-09-16 08:41:32 +02:00
Manuel Aranda Rosales 8d67ccd78a refs #723. Updated command entity with new fields 2024-09-16 08:40:08 +02:00
Manuel Aranda Rosales efdf60778a refs #658. Updated sync endpoint ogBoot 2024-09-13 09:52:13 +02:00
Manuel Aranda Rosales 8bfc471144 refs #658. Updated endpoints with failure and success logic 2024-09-11 11:43:12 +02:00
Manuel Aranda Rosales aa1da83a70 refs #658. Added install fully integration 2024-09-05 18:00:44 +02:00
Manuel Aranda Rosales 1b41814883 refs #658. Added install fully integration 2024-09-05 10:17:10 +02:00
Manuel Aranda Rosales 5d9b347098 refs #617. Added single classroom integration 2024-09-04 16:20:48 +02:00
Manuel Aranda Rosales 07b419016e refs #617. Added single host integration 2024-09-04 16:11:58 +02:00
Manuel Aranda Rosales ebd3d7e539 refs #658. OgBoot Webhook 2024-09-04 10:14:52 +02:00
Manuel Aranda Rosales 2cf6730fbb refs #617. DHCP new changes in API 2024-09-03 10:37:41 +02:00
Manuel Aranda Rosales 030d35f47e Partial commit 2024-09-02 14:38:22 +02:00
Manuel Aranda Rosales 68b460935f Change Output and added ogbott filters 2024-09-02 12:16:40 +02:00
Manuel Aranda Rosales d70d2cf3f0 Some improvements. Added filter search and refactor 2024-09-02 10:09:36 +02:00
Manuel Aranda Rosales e7b303cc11 refs #614. Itnegration ogDhcp. Change some params 2024-08-29 09:00:05 +02:00
Manuel Aranda Rosales a232d5cbd7 refs #614. Itnegration ogDhcp. Change some params 2024-08-27 16:03:22 +02:00
Manuel Aranda Rosales 6d1a2a89ea refs #614. Itnegration ogDhcp. New endpoints 2024-08-27 15:13:56 +02:00
Manuel Aranda Rosales cc1559ef08 Merge branch 'main' into feature/integration-dhcp 2024-08-27 11:41:07 +02:00
Manuel Aranda Rosales 1d7ff4b210 Merge pull request 'feature/integration-ogagent' (#10) from feature/integration-ogagent into main
Reviewed-on: #10
2024-08-27 11:39:06 +02:00
Manuel Aranda Rosales 45dd18f55c refs #624. Changed endpoint disponibilidadCOmandos 2024-08-27 11:28:41 +02:00
Manuel Aranda Rosales 16ece4c2b6 refs #624. Changed endpoint disponibilidadCOmandos 2024-08-27 11:24:50 +02:00
Manuel Aranda Rosales 6094431a38 refs #624. Changed endpoint comandosPendientes 2024-08-27 11:19:48 +02:00
Manuel Aranda Rosales f848c2691e refs #624. Changed endpoint enviaArchivo 2024-08-27 11:13:37 +02:00
Manuel Aranda Rosales a604e6dfc4 refs #624. Changed endpoint enviaArchivo 2024-08-27 11:10:53 +02:00
Manuel Aranda Rosales 9574420180 refs #624. Changed endpoint enviaArchivo 2024-08-27 11:03:50 +02:00
Manuel Aranda Rosales a54e9b113e refs #624. Changed endpoint enviaArchivo 2024-08-27 10:59:39 +02:00
Manuel Aranda Rosales 31b78736f2 refs #614. Itnegration ogDhcp 2024-08-27 10:55:32 +02:00
Manuel Aranda Rosales c6923d49fa refs #624. Changed endpoint AutoExec 2024-08-27 09:51:30 +02:00
Manuel Aranda Rosales 5859b47619 refs #624. Changed endpoint AutoExec 2024-08-26 14:55:07 +02:00
Manuel Aranda Rosales e42f9613b2 refs #624. Changed endpoint AutoExec 2024-08-26 14:54:03 +02:00
Manuel Aranda Rosales cb72571e39 refs #624. Changed endpoint AutoExec 2024-08-26 14:49:13 +02:00
Manuel Aranda Rosales 4b19793371 refs #624. Changed endpoint AutoExec 2024-08-26 14:23:51 +02:00
Manuel Aranda Rosales 59ce22e6f1 refs #624. Changed endpoint AutoExec 2024-08-26 14:14:55 +02:00
Manuel Aranda Rosales ee779798bf refs #624. Added ogAgent controller API 2024-08-26 14:01:21 +02:00
Manuel Aranda Rosales 7e84855117 refs #624. Added ogAgent controller API 2024-08-26 12:20:32 +02:00
Manuel Aranda Rosales 16e3168c3c refs #624. Added ogAgent controller API 2024-08-26 11:46:57 +02:00
Manuel Aranda Rosales ccb317fb15 refs #658. Params PXE boot files POST 2024-08-26 11:40:21 +02:00
Manuel Aranda Rosales f88bb46f3e refs #614. Itnegration ogDhcp 2024-08-23 12:52:01 +02:00
Manuel Aranda Rosales 6afce69f14 refs #658. Refactor endpoints 2024-08-23 09:10:15 +02:00
Manuel Aranda Rosales c8a348449c refs #624. Updated OgAgentController 2024-08-22 09:19:19 +02:00
Manuel Aranda Rosales bae07e46a1 refs #624. Added ogAdmClientController API 2024-08-21 09:39:49 +02:00
Manuel Aranda Rosales 782c345f43 refs #624. Added ogAgent controller API 2024-08-21 09:37:17 +02:00
Manuel Aranda Rosales 750e36ec99 refs #601. Integration API pxe-boot-file 2024-08-21 09:17:48 +02:00
Manuel Aranda Rosales 8e9db51cbc Updated .env 2024-08-20 12:10:04 +02:00
Manuel Aranda Rosales 8677fc0f94 Updated PXEbootFiles input 2024-08-20 11:46:31 +02:00
Manuel Aranda Rosales 75ff3ff11c Updated ogBoot components view 2024-08-20 10:31:21 +02:00
Manuel Aranda Rosales fa2ee36cb9 refs #632. Create new fields and updated API 2024-08-20 08:44:28 +02:00
Manuel Aranda Rosales 36863bff7b refs #632. Create new fields and updated API 2024-08-19 16:03:37 +02:00
Manuel Aranda Rosales f483b94a70 Improvements, and fixed pagination 2024-08-19 15:01:32 +02:00
Manuel Aranda Rosales 159d38570a refs #638. Updated pxe template database field 2024-08-14 15:06:17 +02:00
Manuel Aranda Rosales b26b215ffc refs #614. Itnegration ogDhcp 2024-08-14 15:01:15 +02:00
Manuel Aranda Rosales 3f5004dddd refs #601. Integration API pxe-boot-file 2024-08-13 11:52:04 +02:00
Manuel Aranda Rosales aa2059b70c refs #601. Integration API pxe-template 2024-08-13 09:05:54 +02:00
Manuel Aranda Rosales 524b833c0e refs #601. Integration API pxe-template 2024-08-12 13:23:30 +02:00
Manuel Aranda Rosales b44faa4b7f refs #638. Pxe databble 2024-08-12 13:23:07 +02:00
Manuel Aranda Rosales 960d225ed8 refs #637. create pxe template crud 2024-08-12 13:21:55 +02:00
Manuel Aranda Rosales 7889554b36 refs #601. Integration API ogLive 2024-08-09 10:58:07 +02:00
Manuel Aranda Rosales 7cdf26c0a2 refs #633. CRUD-API ogLive 2024-08-09 08:19:27 +02:00
Manuel Aranda Rosales b855557594 refs #632. Create table ogLive 2024-08-09 08:18:51 +02:00
Manuel Aranda Rosales 1b22192d33 Merge pull request 'feature/views' (#9) from feature/views into main
Reviewed-on: #9
2024-08-08 08:42:35 +02:00
Manuel Aranda Rosales 3e0e593d03 Refactor 2024-08-08 08:41:52 +02:00
Manuel Aranda Rosales e2fad13710 Refactor 2024-08-08 08:41:05 +02:00
Manuel Aranda Rosales 2e856947f2 Merge pull request 'feature/views' (#8) from feature/views into main
Reviewed-on: #8
2024-08-08 08:31:57 +02:00
Manuel Aranda Rosales c9c0fbe863 Merge branch 'feature/organizational-unit-hierarchy' into feature/views 2024-08-05 11:26:51 +02:00
Manuel Aranda Rosales e11556174b Added clientOutput partition field 2024-08-05 11:23:57 +02:00
Manuel Aranda Rosales a256e6c92c Added clientOutput partition field 2024-08-05 11:13:25 +02:00
Manuel Aranda Rosales a182291936 Added partition migration 2024-08-05 10:33:30 +02:00
Manuel Aranda Rosales 5bb75fd6a9 refs #512. Added new field 'user' 2024-08-01 15:51:43 +02:00
Manuel Aranda Rosales d44882c59c refs #512. Added new field 'user' 2024-08-01 15:21:14 +02:00
Manuel Aranda Rosales b6ade24314 refs #518. New endpoint 'search' 2024-07-18 12:43:57 +02:00
Manuel Aranda Rosales 7ba4deaafa refs #512. API Crud views 2024-07-18 08:24:56 +02:00
Manuel Aranda Rosales 020a731351 Merge pull request 'feature/organizational-unit-hierarchy' (#7) from feature/organizational-unit-hierarchy into main
Reviewed-on: #7
2024-07-16 10:21:44 +02:00
428 changed files with 22613 additions and 1732 deletions

20
.env
View File

@ -24,7 +24,7 @@ APP_SECRET=e95c7f17da15ce1b03d77ad655379c34
# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
#
# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4"
#DATABASE_URL="mysql://root:root@127.0.0.1:3336/dimio?serverVersion=8.0.32&charset=utf8mb4"
DATABASE_URL="mysql://root:root@ogcore-database:3306/ogcore?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
OG_1_DATABASE_URL="mysql://root:root@ogcore-database:3306/ogcore_old_og?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
@ -32,7 +32,7 @@ OG_1_DATABASE_URL="mysql://root:root@ogcore-database:3306/ogcore_old_og?serverVe
###< doctrine/doctrine-bundle ###
###> nelmio/cors-bundle ###
CORS_ALLOW_ORIGIN='^https?://(localhost|127\.0\.0\.1)(:[0-9]+)?$'
CORS_ALLOW_ORIGIN='*'
###< nelmio/cors-bundle ###
###> lexik/jwt-authentication-bundle ###
@ -40,3 +40,19 @@ JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem
JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem
JWT_PASSPHRASE=8b9154df37ffa91ef9186ce095324e39e50ff3b023bb1ed34383abd019ba4515
###< lexik/jwt-authentication-bundle ###
OGBOOT_API_URL=http://localhost:8085
OGDHCP_API_URL=http://localhost:8085
###> UDS ###
UDS_AUTH_LOGIN="Usuarios locales"
UDS_AUTH_USERNAME="natiqindel"
UDS_AUTH_PASSWORD="correct horse battery staple"
UDS_URL=https://localhost:8087/uds/rest/
###< UDS ###
###> symfony/mercure-bundle ###
MERCURE_URL=http://ogcore-mercure:3000/.well-known/mercure
MERCURE_PUBLIC_URL=http://ogcore-mercure:3000/.well-known/mercure
MERCURE_JWT_SECRET="!ChangeThisMercureHubJWTSecretKey!"
###< symfony/mercure-bundle ###

26
.env.prod 100644
View File

@ -0,0 +1,26 @@
###> symfony/framework-bundle ###
APP_ENV=prod
APP_SECRET=e95c7f17da15ce1b03d77ad655379c34
###< symfony/framework-bundle ###
###> doctrine/doctrine-bundle ###
DATABASE_URL="mysql://root:root@127.0.0.1:3306/ogcore?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
OG_1_DATABASE_URL="mysql://root:root@127.0.0.1:3306/ogcore_old_og?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
###< doctrine/doctrine-bundle ###
###> nelmio/cors-bundle ###
CORS_ALLOW_ORIGIN='*'
###< nelmio/cors-bundle ###
###> lexik/jwt-authentication-bundle ###
JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem
JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem
JWT_PASSPHRASE=8b9154df37ffa91ef9186ce095324e39e50ff3b023bb1ed34383abd019ba4515
###< lexik/jwt-authentication-bundle ###
###> symfony/mercure-bundle ###
MERCURE_URL=https://localhost:3000/.well-known/mercure
MERCURE_PUBLIC_URL=https://localhost:3000/.well-known/mercure
MERCURE_JWT_SECRET="!ChangeThisMercureHubJWTSecretKey!"
###< symfony/mercure-bundle ###

8
.gitignore vendored
View File

@ -25,3 +25,11 @@
/phpunit.xml
.phpunit.result.cache
###< phpunit/phpunit ###
### Debian packaging
debian/ogcore
debian/*.substvars
debian/*.log
debian/.debhelper/

116
CHANGELOG.md 100644
View File

@ -0,0 +1,116 @@
# Changelog
## [0.11.2] - 2025-04-23
### Fixed
- Se ha cambiado la forma en guardar la fecha al recibir "ping" de los clientes.
---
## [0.11.1] - 2025-04-16
### Fixed
- Se ha corregido un error al crear imagen versionada. Si la particion de origen era diferente, no dejaba crear.
- Error en la transmision de imagenes. No se actualizaba con la imagen versionada, si no con la canonica.
---
## [0.11.0] - 2025-04-11
### Added
- Se ha añadido funcionalidad para renombrar imagenes en ogRepository. Nuevo sistema de versionado.
- Se ha añadido la integracion con el ogAgent para poder ejecutar scripts.
- Se ha añadido el poder añadir descripcion a una imagen.
- Se han añadido 2 nuevos campos en la gestion de los repositorios: usuario y puerto ssh.
- Se ha añadido funcionalidad para poder gestionar el estado de un equipo de manera automatica. En caso de no haber conexion con el cliente, la web sera notificada en un tiempo maximo de 5 min.
### Improved
- Se han modificado los logs para que puedan "salir" por syslog ademas de por fichero.
### Fixed
- Se ha corregido el bug que hacia que cuando habia demasiados clientes, no se mostraran en pantalla debido a un error de memoria.
---
## [0.10.1] - 2025-03-25
### Improved
- Se ha modificado el script de creación de usuarios, añadiendole la opcion del tipo de visionalizacion por defecto de la vista "grupos".
## [0.10.0] - 2025-03-25
### Added
- Nuevo endpoint ogRepository. Convertir imagen en imagen virtual.
- Nuevo endpoint ogRepository. Importar imágenes externas al sistema.
- Nuevo método para desplegar imagenes sin cache.
---
## [0.9.5] - 2025-03-19
### Added
- Jenkinsfile updated to publish in repo
---
## [0.9.4] - 2025-03-17
### Fixed
- Mercure service behind nginx server for containers, expose port in docker compose for nginx
---
## [0.9.3] - 2025-03-17
### Fixed
- Mercure service behind nginx server for containers
---
## [0.9.2] - 2025-03-12
### Fixed
- Added mercure service in docker compose file for deployments.
---
## [0.9.1] - 2025-03-12
### Fixed
- Corrección en la cancelacion de transmisiones p2p.
---
## [0.9.0] - 2025-03-04
### Added
- Nueva funcionalidad para tener notificaciones en tiempo real. Instalación de bundle "Mercure".
- Creacion de EventListener en Symfony, para publicar mensajes en Mercure, cuando se realicen cambios en la base de datos ( cambio de estado en lo equipos, y trazas).
- Nuevo endpoint "backup image". Integracion con ogRepository.
- Nuevo campo en "usuarios" el cual permite escoger la visualizacion por defecto de la vista "grupos".
- Nuevo campo "dns" en "subredes" para gestionar los servidores DNS.
- Integracion endpoint ogRepository para checkear la integridad de una imagen.
- Nueva funcionalidad para cancelar despliegues de imagenes.
- Añadido nuevo campo "cancelado" en trazas.
### Changed
- Cambios en logs. Cambios en salida (stderror -> file.log)
- Modulo DHCP. Añadir equipos, ahora se gestiona con una unica llamada a la API.
- Acciones masivas en equipos. Se ha cambiado la respuesta para que no fallen las peticiones si uno o mas equipos no da respuesta.
---
## [0.8.1] - 2025-02-25
### Fixed
- Corrección de bug en el deploy de imágenes
---
## [0.8.0] - 2025-01-10
### Added
- Nuevos campos en "aulas" para la jerarquia en clientes.
- Nueva funcionalidad "imagen global". Integracion con ogRepository.
### Changed
- Limpieza en campos "name" y "date" de ogLive. Es necesario parsear el campo "filename" para facilitar el uso al usuario en la web.
### 🐛 Fixed
- Corrección de bug que impedia borrar un cliente si tenia una traza enlazada.
---
## [0.7.3] - 2025-01-03
### Added
- Adaptados cambios en los endpoints para multiseleccion de clientes.
- Se agregó la funcionalidad de importar/exportar. Integración con ogRepository.
- Se agregó la funcionalidad de borrar imágenes. Integración con ogRepository.
- Se agregó el modo "TORRENT" y "UDPCAST" en el despliegue de imágenes.
### ⚡ Changed
- Refactorización del webhook de ogRepository.
---
## Formato de cambios:
- **Added**: Secciones con nuevas características.
- **Fixed**: Corrección de errores y bugs.
- **Changed**: Modificaciones o mejoras en funcionalidades existentes.
- **Improved**: Mejoras en funcionalidades existentes.
- **Removed**: Funcionalidades o dependencias eliminadas.

View File

@ -0,0 +1,107 @@
@Library('jenkins-shared-library') _
pipeline {
agent {
label 'jenkins-slave'
}
environment {
DEBIAN_FRONTEND = 'noninteractive'
DEFAULT_DEV_NAME = 'Opengnsys Team'
DEFAULT_DEV_EMAIL = 'opengnsys@qindel.com'
}
options {
skipDefaultCheckout()
}
parameters {
string(name: 'DEV_NAME', defaultValue: '', description: 'Nombre del desarrollador')
string(name: 'DEV_EMAIL', defaultValue: '', description: 'Email del desarrollador')
}
stages {
stage('Prepare Workspace') {
steps {
script {
env.BUILD_DIR = "${WORKSPACE}/ogcore"
sh "mkdir -p ${env.BUILD_DIR}"
}
}
}
stage('Checkout') {
steps {
dir("${env.BUILD_DIR}") {
checkout scm
}
}
}
stage('Generate Changelog') {
when {
expression {
return env.TAG_NAME != null
}
}
steps {
script {
def devName = params.DEV_NAME ? params.DEV_NAME : env.DEFAULT_DEV_NAME
def devEmail = params.DEV_EMAIL ? params.DEV_EMAIL : env.DEFAULT_DEV_EMAIL
generateDebianChangelog(env.BUILD_DIR, devName, devEmail)
}
}
}
stage('Generate Changelog (Nightly)'){
when {
branch 'main'
}
steps {
script {
def devName = params.DEV_NAME ? params.DEV_NAME : env.DEFAULT_DEV_NAME
def devEmail = params.DEV_EMAIL ? params.DEV_EMAIL : env.DEFAULT_DEV_EMAIL
generateDebianChangelog(env.BUILD_DIR, devName, devEmail,"nightly")
}
}
}
stage('Build') {
steps {
script {
construirPaquete(env.BUILD_DIR, "../artifacts", "172.17.8.68", "/var/tmp/opengnsys/debian-repo/ogcore")
}
}
}
stage ('Publish to Debian Repository') {
when {
expression {
return env.TAG_NAME != null
}
}
agent { label 'debian-repo' }
steps {
script {
// Construir el patrón de versión esperado en el nombre del paquete
def versionPattern = "${env.TAG_NAME}-${env.BUILD_NUMBER}"
publicarEnAptly('/var/tmp/opengnsys/debian-repo/ogcore', 'opengnsys-devel', versionPattern)
}
}
}
stage ('Publish to Debian Repository (Nightly)') {
when {
branch 'main'
}
agent { label 'debian-repo' }
steps {
script {
// Construir el patrón de versión esperado en el nombre del paquete
def versionPattern = "-${env.BUILD_NUMBER}~nightly"
publicarEnAptly('/var/tmp/opengnsys/debian-repo/ogcore', 'nightly', versionPattern)
}
}
}
}
post {
always {
notifyBuildStatus('narenas@qindel.com')
}
}
}

128
Jenkinsfile vendored 100644
View File

@ -0,0 +1,128 @@
pipeline {
agent {
label 'jenkins-slave'
}
environment {
DOCKER_REPO = "opengnsys"
DOCKER_TAG = "${env.BUILD_NUMBER}"
DOCKER_IMAGE_NAME = "ogcore"
BRANCH_NAME = "${env.BRANCH_NAME}"
DOCKER_IDENTITY = "${DOCKER_REPO}/${DOCKER_IMAGE_NAME}-php:${BRANCH_NAME}-${DOCKER_TAG}"
DOCKER_IDENTITY_NGINX = "${DOCKER_REPO}/${DOCKER_IMAGE_NAME}-nginx:${BRANCH_NAME}-${DOCKER_TAG}"
DOCKER_COMPOSE_TEMPLATE = 'docker-compose-ci-template.yaml'
DOCKER_COMPOSE_FILE = 'docker-compose-ci-tmp.yaml'
}
stages {
stage ("Checkout") {
steps {
checkout scm
}
}
stage('Build Environment') {
steps {
sh '''
# Detener todos los contenedores si hay alguno ejecutándose
if [ $(docker ps -q | wc -l) -gt 0 ]; then
docker stop $(docker ps -q)
fi
# Eliminar todos los contenedores si hay alguno detenido
if [ $(docker ps -a -q | wc -l) -gt 0 ]; then
docker rm $(docker ps -a -q)
fi
'''
script {
docker.build("${DOCKER_IDENTITY}", '-f docker/Dockerfile-jenkins-php .')
docker.build("${DOCKER_IDENTITY_NGINX}", '-f docker/Dockerfile-nginx .')
}
}
}
stage(('Prepare Docker Composer')) {
steps {
sh """
sed 's|ogcore-php:static|${DOCKER_IDENTITY}|g; s|ogcore-nginx:static|${DOCKER_IDENTITY_NGINX}|g' ${DOCKER_COMPOSE_TEMPLATE} > ${DOCKER_COMPOSE_FILE}
cat ${DOCKER_COMPOSE_FILE}
"""
}
}
stage('Run containers') {
steps {
sh "docker compose -f ${DOCKER_COMPOSE_FILE} up -d"
}
}
stage('Install dependencies') {
steps {
// Install dependencies
sh """
docker compose exec php mkdir -p /report
docker compose exec php composer install
docker compose exec php php bin/console lexik:jwt:generate-keypair --overwrite
docker compose exec php php bin/console doctrine:migrations:migrate --no-interaction
docker compose exec php php bin/console doctrine:fixtures:load --no-interaction
"""
}
}
stage('Tests') {
steps {
// Run tests
sh """
docker compose exec php bin/phpunit --log-junit /report/phpunit.xml
"""
}
}
stage ("Publish Image") {
steps {
script {
docker.withRegistry('https://index.docker.io/v1/', 'docker-hub-credentials') {
docker.image("${DOCKER_IDENTITY}").push()
docker.image("${DOCKER_IDENTITY_NGINX}").push()
if (env.BRANCH_NAME == 'main') {
docker.image("${DOCKER_IDENTITY}").push("latest")
docker.image("${DOCKER_IDENTITY_NGINX}").push("latest")
}
if (env.TAG_NAME) {
docker.image("${DOCKER_IDENTITY}").push("${env.TAG_NAME}")
docker.image("${DOCKER_IDENTITY_NGINX}").push("${env.TAG_NAME}")
}
}
}
}
}
}
post {
always {
script {
def committerEmail = sh (
script: "git show -s --pretty=%ae",
returnStdout: true
).trim()
def buildResult = currentBuild.currentResult
mail to: committerEmail,
subject: "Opengnsys CI Build ${env.JOB_NAME} - ${env.BRANCH_NAME} - ${buildResult}",
body: """
<h1>Opengnsys CI Build ${JOB_NAME} - ${BRANCH_NAME} - ${buildResult}</h1>
<p>Build Number: ${BUILD_NUMBER}</p>
<p>Build URL: ${BUILD_URL}</p>º
Saludos cordiales,
Opengnsys CI
"""
}
sh "docker compose -f ${DOCKER_COMPOSE_FILE} cp php:/report/phpunit.xml phpunit.xml"
// Publish JUnit test results
xunit (
thresholds: [ skipped(failureThreshold: '0') , failed(failureThreshold: '0') ],
tools: [ PHPUnit(pattern: 'phpunit.xml') ]
)
// Remove containers
sh "docker compose -f ${DOCKER_COMPOSE_FILE} down"
sh "docker compose -f ${DOCKER_COMPOSE_FILE} rm -f"
sh "docker rmi ${DOCKER_IDENTITY}"
sh "docker rmi ${DOCKER_IDENTITY_NGINX}"
}
}
}

View File

@ -69,6 +69,7 @@ docker exec ogcore-php php bin/console doctrine:migrations:migrate --no-interact
```sh
docker exec ogcore-php php bin/console doctrine:fixtures:load --no-interaction
docker exec ogcore-php php bin/console app:load-default-user-groups #cargamos los grupos por defecto
docker exec ogcore-php php bin/console app:load-default-commands #cargamos los commands por defecto
```
## UX Api Platform
@ -129,8 +130,11 @@ Una vez tengamos la base de datos cargada, podremos ejecutar las migraciones de
```sh
--- Migraciones de OpenGnsys. ---
docker exec ogcore-php php bin/console opengnsys:migration:organizational-unit #cargamos las unidades organizativas
docker exec ogcore-php php bin/console opengnsys:migrate-hardware-profiles #cargamos los perfiles de hardware
docker exec ogcore-php php bin/console opengnsys:migration:hardware-profile #cargamos los perfiles de hardware
docker exec ogcore-php php bin/console opengnsys:migration:clients #cargamos los clientes
docker exec ogcore-php php bin/console opengnsys:migration:os #cargamos los sistemas operativos
docker exec ogcore-php php bin/console opengnsys:migration:image #cargamos las imagenes
docker exec ogcore-php php bin/console opengnsys:migration:software-profile #cargamos los software profiles
```
## Objetos de interés

View File

@ -5,3 +5,9 @@ services:
ports:
- "5432"
###< doctrine/doctrine-bundle ###
###> symfony/mercure-bundle ###
mercure:
ports:
- "80"
###< symfony/mercure-bundle ###

View File

@ -2,12 +2,13 @@
"type": "project",
"license": "proprietary",
"minimum-stability": "stable",
"version": "0.5.0",
"prefer-stable": true,
"require": {
"php": ">=8.1",
"ext-ctype": "*",
"ext-iconv": "*",
"api-platform/core": "^3.3",
"api-platform/core": "^3.2",
"doctrine/dbal": "^3",
"doctrine/doctrine-bundle": "^2.12",
"doctrine/doctrine-migrations-bundle": "^3.3",
@ -25,11 +26,15 @@
"symfony/expression-language": "6.4.*",
"symfony/flex": "^2",
"symfony/framework-bundle": "6.4.*",
"symfony/http-client": "6.4.*",
"symfony/mercure-bundle": "^0.3.9",
"symfony/monolog-bundle": "^3.10",
"symfony/property-access": "6.4.*",
"symfony/property-info": "6.4.*",
"symfony/runtime": "6.4.*",
"symfony/security-bundle": "6.4.*",
"symfony/serializer": "6.4.*",
"symfony/translation": "6.4.*",
"symfony/twig-bundle": "6.4.*",
"symfony/validator": "6.4.*",
"symfony/yaml": "6.4.*"
@ -88,7 +93,6 @@
"phpunit/phpunit": "^9.5",
"symfony/browser-kit": "6.4.*",
"symfony/css-selector": "6.4.*",
"symfony/http-client": "6.4.*",
"symfony/maker-bundle": "^1.59",
"symfony/phpunit-bridge": "^7.0",
"symfony/web-profiler-bundle": "^6.4",

2309
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -7,13 +7,15 @@ resources:
groups: ['default', 'client:read']
denormalizationContext:
groups: ['client:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\ClientProvider
filters:
- 'api_platform.filter.client.order'
- 'api_platform.filter.client.search'
- 'api_platform.filter.client.boolean'
- 'api_platform.filter.client.exist'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\ClientProvider
ApiPlatform\Metadata\Put:
@ -33,6 +35,43 @@ resources:
uriTemplate: /clients/change-organizational-units
controller: App\Controller\ChangeOrganizationalUnitAction
agent_status:
class: ApiPlatform\Metadata\Post
method: POST
input: false
output: false
uriTemplate: /clients/{uuid}/agent/status
controller: App\Controller\OgAgent\StatusAction
get_pxe:
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /clients/server/{uuid}/get-pxe
controller: App\Controller\OgBoot\PxeBootFile\GetAction
login_client:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\MultipleClientsInput
uriTemplate: /clients/server/login-client
controller: App\Controller\OgAgent\LoginAction
reboot_client:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\MultipleClientsInput
uriTemplate: /clients/server/reboot
controller: App\Controller\OgAgent\RebootAction
power_off_client:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\MultipleClientsInput
uriTemplate: /clients/server/power-off
controller: App\Controller\OgAgent\PowerOffAction
properties:
App\Entity\Client:
id:

View File

@ -0,0 +1,40 @@
resources:
App\Entity\Command:
processor: App\State\Processor\CommandProcessor
input: App\Dto\Input\CommandInput
output: App\Dto\Output\CommandOutput
normalizationContext:
groups: ['default', 'command:read']
denormalizationContext:
groups: ['command:write']
order:
id: 'DESC'
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\CommandProvider
filters:
- 'api_platform.filter.command.order'
- 'api_platform.filter.command.search'
- 'api_platform.filter.command.boolean'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\CommandProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\CommandProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\CommandProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
command_execute:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\CommandExecuteInput
uriTemplate: /commands/run-script
controller: App\Controller\OgAgent\RunScriptAction
properties:
App\Entity\Command:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,46 @@
resources:
App\Entity\CommandGroup:
processor: App\State\Processor\CommandGroupProcessor
input: App\Dto\Input\CommandGroupInput
output: App\Dto\Output\CommandGroupOutput
normalizationContext:
groups: ['default', 'command-group:read']
denormalizationContext:
groups: ['command-group:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\CommandGroupProvider
filters:
- 'api_platform.filter.command.order'
- 'api_platform.filter.command.search'
- 'api_platform.filter.command.boolean'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\CommandGroupProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\CommandGroupProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\CommandGroupProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
add_commands:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\CommandGroupAddCommandsInput
uriTemplate: /command-groups/{uuid}/add-commands
controller: App\Controller\CommandGroupAddCommandsAction
command_group_execute:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\CommandGroupExecuteInput
uriTemplate: /command-groups/{uuid}/execute
controller: App\Controller\CommandGroupExecuteAction
properties:
App\Entity\CommandGroup:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,32 @@
resources:
App\Entity\CommandTask:
processor: App\State\Processor\CommandTaskProcessor
input: App\Dto\Input\CommandTaskInput
output: App\Dto\Output\CommandTaskOutput
normalizationContext:
groups: ['default', 'command-task:read']
denormalizationContext:
groups: ['command-task:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\CommandTaskProvider
filters:
- 'api_platform.filter.command_task.order'
- 'api_platform.filter.command_task.search'
- 'api_platform.filter.command_task.boolean'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\CommandTaskProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\CommandTaskProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\CommandTaskProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
properties:
App\Entity\CommandTask:
id:
identifier: false
uuid:
identifier: true

View File

@ -7,12 +7,17 @@ resources:
groups: ['default', 'image:read']
denormalizationContext:
groups: ['image:write']
order:
id: 'DESC'
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\ImageProvider
filters:
- 'api_platform.filter.image.order'
- 'api_platform.filter.image.search'
- 'api_platform.filter.image.boolean'
- 'image.repository_filter'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\ImageProvider
ApiPlatform\Metadata\Put:

View File

@ -0,0 +1,134 @@
resources:
App\Entity\ImageImageRepository:
processor: App\State\Processor\ImageImageRepositoryProcessor
input: App\Dto\Input\ImageImageRepositoryInput
output: App\Dto\Output\ImageImageRepositoryOutput
normalizationContext:
groups: ['default', 'image-image-repository:read']
denormalizationContext:
groups: ['image-image-repository:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\ImageImageRepositoryProvider
filters:
- 'api_platform.filter.image_image_repository.order'
- 'api_platform.filter.image_image_repository.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\ImageImageRepositoryProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\ImageImageRepositoryProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\ImageImageRepositoryProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
get_image_ogrepository:
shortName: OgRepository Server
description: Get image in OgRepository
class: ApiPlatform\Metadata\Get
method: GET
input: false
uriTemplate: /image-image-repositories/server/{uuid}/get
controller: App\Controller\OgRepository\Image\GetAction
create_aux_files_image_ogrepository:
shortName: OgRepository Server
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-image-repositories/server/{uuid}/create-aux-files
controller: App\Controller\OgRepository\Image\CreateAuxFilesAction
deploy_image_ogrepository:
shortName: OgRepository Server
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\DeployImageInput
uriTemplate: /image-image-repositories/{uuid}/deploy-image
controller: App\Controller\DeployImageAction
backup_image_ogrepository:
shortName: OgRepository Server
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\BackupImageInput
uriTemplate: /image-image-repositories/{uuid}/backup-image
controller: App\Controller\OgRepository\Image\BackupImageAction
convert_image_to_virtual_image_ogrepository:
shortName: OgRepository Server
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\ConvertImageToVirtualInput
uriTemplate: /image-image-repositories/{uuid}/convert-image-to-virtual
controller: App\Controller\OgRepository\Image\ConvertImageToVirtualAction
rename_image_ogrepository:
shortName: OgRepository Server
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\RenameImageInput
uriTemplate: /image-image-repositories/{uuid}/rename-image
controller: App\Controller\OgRepository\Image\RenameAction
trash_delete_image_ogrepository:
shortName: OgRepository Server
description: Delete Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-image-repositories/server/{uuid}/delete-trash
controller: App\Controller\OgRepository\Image\DeleteTrashAction
permanent_delete_image_ogrepository:
shortName: OgRepository Server
description: Delete Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-image-repositories/server/{uuid}/delete-permanent
controller: App\Controller\OgRepository\Image\DeletePermanentAction
recover_image_ogrepository:
shortName: OgRepository Server
description: Recover Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-image-repositories/server/{uuid}/recover
controller: App\Controller\OgRepository\Image\RecoverAction
transfer_image_ogrepository:
shortName: OgRepository Server
description: Export Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\TransferGlobalImageInput
uriTemplate: /image-image-repositories/{uuid}/transfer-image
controller: App\Controller\OgRepository\Image\TransferAction
get_status_image_ogrepository:
shortName: OgRepository Server
description: Get Status Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-image-repositories/server/{uuid}/status
controller: App\Controller\OgRepository\Image\GetStatusAction
transfer_global_image_repository:
shortName: OgRepository Server
description: Transfer Global Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-image-repositories/server/{uuid}/transfer-global
controller: App\Controller\OgRepository\Image\TransferGlobalAction
properties:
App\Entity\ImageImageRepository:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,83 @@
resources:
App\Entity\ImageRepository:
processor: App\State\Processor\ImageRepositoryProcessor
input: App\Dto\Input\ImageRepositoryInput
output: App\Dto\Output\ImageRepositoryOutput
normalizationContext:
groups: ['default', 'repository:read']
denormalizationContext:
groups: ['repository:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\ImageRepositoryProvider
filters:
- 'api_platform.filter.repository.order'
- 'api_platform.filter.repository.search'
- 'repository.not_equal_filter'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\ImageRepositoryProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\ImageRepositoryProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\ImageRepositoryProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
image_ogrepository_sync:
shortName: OgRepository Server
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-repositories/server/{uuid}/sync
controller: App\Controller\OgRepository\SyncAction
wol_client:
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\WoLInput
uriTemplate: /image-repositories/wol
controller: App\Controller\OgRepository\WoLAction
get_collection_images_ogrepository:
shortName: OgRepository Server
description: Get collection of image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /image-repositories/server/{uuid}/get-collection
controller: App\Controller\OgRepository\GetCollectionAction
images_ogrepository_status:
shortName: OgRepository Server
description: Get status of OgRepository
class: ApiPlatform\Metadata\Get
method: GET
input: false
uriTemplate: /image-repositories/server/{uuid}/status
controller: App\Controller\OgRepository\StatusAction
import_image_ogrepository:
shortName: OgRepository Server
description: Export Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\ImportImageRepositoryInput
uriTemplate: /image-repositories/{uuid}/import-image
controller: App\Controller\OgRepository\Image\ImportAction
convert_image_ogrepository:
shortName: OgRepository Server
description: Convert Image in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\ConvertImageRepositoryInput
uriTemplate: /image-repositories/{uuid}/convert-image
controller: App\Controller\OgRepository\Image\ConvertAction
properties:
App\Entity\ImageRepository:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,102 @@
resources:
App\Entity\OgLive:
processor: App\State\Processor\OgLiveProcessor
input: App\Dto\Input\OgLiveInput
output: App\Dto\Output\OgLiveOutput
normalizationContext:
groups: ['default', 'og-live:read']
denormalizationContext:
groups: ['og-live:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\OgLiveProvider
filters:
- 'api_platform.filter.og_live.order'
- 'api_platform.filter.og_live.search'
- 'api_platform.filter.og_live.boolean'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\OgLiveProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\OgLiveProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\OgLiveProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
oglives_sync:
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /og-lives/sync
controller: App\Controller\OgBoot\OgLive\SyncAction
get_collection_oglives:
shortName: OgLive Server
description: Get collection of OgLive
class: ApiPlatform\Metadata\GetCollection
method: GET
input: false
uriTemplate: /og-lives/server/get-collection
controller: App\Controller\OgBoot\OgLive\GetCollectionAction
get_oglive:
shortName: OgLive Server
description: Get OgLive
class: ApiPlatform\Metadata\Get
method: GET
input: false
uriTemplate: /og-lives/server/{uuid}/get
controller: App\Controller\OgBoot\OgLive\GetAction
get_isos:
shortName: OgLive Server
description: Get Isos of OgLive
class: ApiPlatform\Metadata\GetCollection
method: GET
input: false
uriTemplate: /og-lives/server/get-isos
controller: App\Controller\OgBoot\OgLive\GetIsosAction
get_default:
shortName: OgLive Server
description: Get default OgLive
class: ApiPlatform\Metadata\GetCollection
method: GET
input: false
uriTemplate: /og-lives/server/get-default
controller: App\Controller\OgBoot\OgLive\GetDefaultAction
set_default:
shortName: OgLive Server
description: Set default OgLive
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /og-lives/server/{uuid}/set-default
controller: App\Controller\OgBoot\OgLive\SetDefaultAction
install:
shortName: OgLive Server
description: Install OgLive
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /og-lives/server/{uuid}/install
controller: App\Controller\OgBoot\OgLive\InstallAction
uninstall:
shortName: OgLive Server
description: Uninstall OgLive
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /og-lives/server/{uuid}/uninstall
controller: App\Controller\OgBoot\OgLive\UninstallAction
properties:
App\Entity\OgLive:
id:
identifier: false
uuid:
identifier: true

View File

@ -13,6 +13,8 @@ resources:
filters:
- 'api_platform.filter.organizational_unit.order'
- 'api_platform.filter.organizational_unit.search'
- 'api_platform.filter.organizational_unit.group_filter'
ApiPlatform\Metadata\Get:
security: 'is_granted("ORGANIZATIONAL_UNIT_VIEW", object)'
provider: App\State\Provider\OrganizationalUnitProvider

View File

@ -1,8 +1,10 @@
resources:
App\Entity\Partition:
processor: App\State\Processor\PartitionProcessor
input: App\Dto\Input\PartitionInput
input: App\Dto\Input\PartitionPostInput
output: App\Dto\Output\PartitionOutput
order:
partitionNumber: 'ASC'
normalizationContext:
groups: ['default', 'partition:read']
denormalizationContext:
@ -27,4 +29,4 @@ properties:
id:
identifier: false
uuid:
identifier: true
identifier: true

View File

@ -0,0 +1,103 @@
resources:
App\Entity\PxeTemplate:
processor: App\State\Processor\PxeTemplateProcessor
input: App\Dto\Input\PxeTemplateInput
output: App\Dto\Output\PxeTemplateOutput
normalizationContext:
groups: ['default', 'pxe-template:read']
denormalizationContext:
groups: ['pxe-template:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\PxeTemplateProvider
filters:
- 'api_platform.filter.pxe_template.order'
- 'api_platform.filter.pxe_template.search'
- 'api_platform.filter.pxe_template.boolean'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\PxeTemplateProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\PxeTemplateProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\PxeTemplateProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
pxe_template_sync:
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /pxe-templates/sync
controller: App\Controller\OgBoot\PxeTemplate\SyncAction
get_collection_templates:
shortName: PxeTemplate Server
description: Get collection of PxeTemplate
class: ApiPlatform\Metadata\GetCollection
method: GET
input: false
uriTemplate: /pxe-templates/server/get-collection
controller: App\Controller\OgBoot\PxeTemplate\GetCollectionAction
get_template:
shortName: PxeTemplate Server
description: Get PxeTemplate
class: ApiPlatform\Metadata\Get
method: GET
input: false
uriTemplate: /pxe-templates/server/{uuid}/get
controller: App\Controller\OgBoot\PxeTemplate\GetAction
post_template:
shortName: PxeTemplate Server
description: Create PxeTemplate
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /pxe-templates/server/{uuid}/post
controller: App\Controller\OgBoot\PxeTemplate\PostAction
delete_template:
shortName: PxeTemplate Server
description: Delete PxeTemplate
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /pxe-templates/server/{uuid}/delete
controller: App\Controller\OgBoot\PxeTemplate\DeleteAction
template_add_clients:
shortName: PxeTemplate Server
description: Add Client to PxeTemplate
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\PxeTemplateAddClientsInput
uriTemplate: /pxe-templates/{uuid}/add-clients
controller: App\Controller\OgBoot\PxeTemplate\AddClientAction
template_sync_client:
shortName: PxeTemplate Server
description: Sync Client to PxeTemplate
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\PxeTemplateSyncClientInput
uriTemplate: /pxe-templates/{uuid}/sync-client
controller: App\Controller\OgBoot\PxeBootFile\PostAction
template_delete_client:
shortName: PxeTemplate Server
description: Add Client to PxeTemplate
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\PxeTemplateDeleteClientInput
uriTemplate: /pxe-templates/{uuid}/delete-client
controller: App\Controller\OgBoot\PxeTemplate\DeleteClientAction
properties:
App\Entity\PxeTemplate:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,37 @@
resources:
App\Entity\RemoteCalendar:
processor: App\State\Processor\RemoteCalendarProcessor
input: App\Dto\Input\RemoteCalendarInput
output: App\Dto\Output\RemoteCalendarOutput
normalizationContext:
groups: ['default', 'remote-calendar:read']
denormalizationContext:
groups: ['remote-calendar:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\RemoteCalendarProvider
filters:
- 'api_platform.filter.remote_calendar.order'
- 'api_platform.filter.remote_calendar.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\RemoteCalendarProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\RemoteCalendarProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\RemoteCalendarProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
sync_uds:
class: ApiPlatform\Metadata\Post
method: POST
uriTemplate: /remote-calendars/{uuid}/sync-uds
controller: App\Controller\UDS\RemoteCalendarSyncUdsAction
properties:
App\Entity\RemoteCalendar:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,31 @@
resources:
App\Entity\RemoteCalendarRule:
processor: App\State\Processor\RemoteCalendarRuleProcessor
input: App\Dto\Input\RemoteCalendarRuleInput
output: App\Dto\Output\RemoteCalendarRuleOutput
normalizationContext:
groups: ['default', 'remote-calendar-rule:read']
denormalizationContext:
groups: ['remote-calendar-rule:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\RemoteCalendarRuleProvider
filters:
- 'api_platform.filter.remote_calendar_rule.order'
- 'api_platform.filter.remote_calendar_rule.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\RemoteCalendarRuleProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\RemoteCalendarRuleProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\RemoteCalendarRuleProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
properties:
App\Entity\RemoteCalendarRule:
id:
identifier: false
uuid:
identifier: true

View File

@ -11,10 +11,13 @@ resources:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\SoftwareProfileProvider
filters:
- 'api_platform.filter.software.order'
- 'api_platform.filter.software.search'
- 'api_platform.filter.software_profile.order'
- 'api_platform.filter.software_profile.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\SoftwareProfileProvider
normalizationContext:
groups: ['software-profile:read', 'software-profile:item:get', 'software-profile:read:collection:short']
ApiPlatform\Metadata\Put:
provider: App\State\Provider\SoftwareProfileProvider
ApiPlatform\Metadata\Patch:

View File

@ -0,0 +1,121 @@
resources:
App\Entity\Subnet:
processor: App\State\Processor\SubnetProcessor
input: App\Dto\Input\SubnetInput
output: App\Dto\Output\SubnetOutput
normalizationContext:
groups: ['default', 'subnet:read']
denormalizationContext:
groups: ['subnet:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\SubnetProvider
filters:
- 'api_platform.filter.subnet.order'
- 'api_platform.filter.subnet.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\SubnetProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\SubnetProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\SubnetProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
subnet_sync:
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /subnets/sync
controller: App\Controller\OgDhcp\Subnet\SyncAction
get_collection_subnets:
shortName: Subnet Server
description: Get collection of Subnet
class: ApiPlatform\Metadata\GetCollection
method: GET
input: false
uriTemplate: /og-dhcp/server/get-collection
controller: App\Controller\OgDhcp\Subnet\GetCollectionAction
get_subnet:
shortName: Subnet Server
description: Get Subnet
class: ApiPlatform\Metadata\Get
method: GET
input: false
uriTemplate: /og-dhcp/server/{uuid}/get
controller: App\Controller\OgDhcp\Subnet\GetAction
post_subnet:
shortName: Subnet Server
description: Create Subnet
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /og-dhcp/server/{uuid}/post
controller: App\Controller\OgDhcp\Subnet\PostAction
put_subnet:
shortName: Subnet Server
description: Create Subnet
class: ApiPlatform\Metadata\Put
method: PUT
input: false
uriTemplate: /og-dhcp/server/{uuid}/put
controller: App\Controller\OgDhcp\Subnet\PutAction
delete_subnet:
shortName: Subnet Server
description: Delete Subnet
class: ApiPlatform\Metadata\Delete
method: DELETE
input: false
uriTemplate: /og-dhcp/server/{uuid}/delete
controller: App\Controller\OgDhcp\Subnet\DeleteAction
post_host:
shortName: Subnet Server Hosts
description: Post Host to Subnet
class: ApiPlatform\Metadata\Post
method: POST
input: App\Dto\Input\SubnetAddHostInput
uriTemplate: /og-dhcp/server/{uuid}/post-host
controller: App\Controller\OgDhcp\Subnet\PostHostAction
get_hosts:
shortName: Subnet Server Hosts
description: Get Hosts of Subnet
class: ApiPlatform\Metadata\Get
method: GET
input: false
uriTemplate: /og-dhcp/server/{uuid}/get-hosts
controller: App\Controller\OgDhcp\Subnet\GetHostsAction
put_host:
shortName: Subnet Server Hosts
description: Put Host of Subnet
class: ApiPlatform\Metadata\Put
method: PUT
input: false
uriTemplate: /og-dhcp/server/{uuid}/put-host
controller: App\Controller\OgDhcp\Subnet\PutHostAction
delete_host:
shortName: Subnet Server Hosts
description: Delete Host of Subnet
class: ApiPlatform\Metadata\Delete
method: DELETE
input: false
read: false
uriTemplate: /og-dhcp/server/{uuid}/delete-host/{clientUuid}
controller: App\Controller\OgDhcp\Subnet\DeleteHostAction
properties:
App\Entity\Subnet:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,32 @@
resources:
App\Entity\Trace:
output: App\Dto\Output\TraceOutput
normalizationContext:
groups: ['default', 'trace:read']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\TraceProvider
filters:
- 'api_platform.filter.trace.order'
- 'api_platform.filter.trace.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\TraceProvider
cancel_trace:
shortName: OgRepository Server
description: Cancel Trace in OgRepository
class: ApiPlatform\Metadata\Post
method: POST
input: false
uriTemplate: /traces/server/{uuid}/cancel
controller: App\Controller\OgRepository\Image\CancelTransmissionAction
order:
createdAt: DESC
properties:
App\Entity\Trace:
id:
identifier: false
uuid:
identifier: true

View File

@ -0,0 +1,30 @@
resources:
App\Entity\View:
processor: App\State\Processor\ViewProcessor
input: App\Dto\Input\ViewInput
output: App\Dto\Output\ViewOutput
normalizationContext:
groups: ['default', 'view:read']
denormalizationContext:
groups: ['view:write']
operations:
ApiPlatform\Metadata\GetCollection:
provider: App\State\Provider\ViewProvider
filters:
- 'api_platform.filter.view.order'
- 'api_platform.filter.view.search'
ApiPlatform\Metadata\Get:
provider: App\State\Provider\ViewProvider
ApiPlatform\Metadata\Put:
provider: App\State\Provider\ViewProvider
ApiPlatform\Metadata\Patch:
provider: App\State\Provider\ViewProvider
ApiPlatform\Metadata\Post: ~
ApiPlatform\Metadata\Delete: ~
properties:
App\Entity\View:
id:
identifier: false
uuid:
identifier: true

View File

@ -16,4 +16,6 @@ return [
Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true],
Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle::class => ['all' => true],
DAMA\DoctrineTestBundle\DAMADoctrineTestBundle::class => ['test' => true],
Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true],
Symfony\Bundle\MercureBundle\MercureBundle::class => ['all' => true],
];

View File

@ -1,43 +1,29 @@
api_platform:
title: 'OgCore API'
description: 'API Documentation for OgCore'
version: 1.0.0
path_segment_name_generator: 'api_platform.path_segment_name_generator.dash'
title: 'OgCore Api'
description: 'Api Documentation for OgCore'
version: 0.5.0
path_segment_name_generator: api_platform.path_segment_name_generator.dash
defaults:
pagination_client_items_per_page: true
mercure:
enabled: true
collection:
pagination:
items_per_page_parameter_name: 'itemsPerPage'
formats:
jsonld: [ 'application/ld+json' ]
jsonhal: [ 'application/hal+json' ]
jsonapi: [ 'application/vnd.api+json' ]
json: [ 'application/json' ]
xml: [ 'application/xml', 'text/xml' ]
yaml: [ 'application/x-yaml' ]
csv: [ 'text/csv' ]
html: [ 'text/html' ]
json: [ 'application/json' ]
csv: [ 'text/csv' ]
patch_formats:
jsonld: ['application/ld+json', 'application/json']
mapping:
paths: ['%kernel.project_dir%/config/api_platform', '%kernel.project_dir%/src/Dto']
use_symfony_listeners: true
collection:
pagination:
items_per_page_parameter_name: 'itemsPerPage'
defaults:
pagination_client_items_per_page: true
denormalization_context:
allow_extra_attributes: false
cache_headers:
vary: [ 'Content-Type', 'Authorization', 'Origin' ]
extra_properties:
standard_put: true
rfc_7807_compliant_errors: true
event_listeners_backward_compatibility_layer: false
keep_legacy_inflector: true
docs_formats:
jsonld: ['application/ld+json']
jsonopenapi: ['application/vnd.openapi+json']
html: ['text/html']
swagger:
versions: [3]
api_keys:
apiKey:
name: Authorization
type: header
type: header
exception_to_status:
Doctrine\DBAL\Exception\ForeignKeyConstraintViolationException: 409

View File

@ -12,12 +12,18 @@ framework:
handler_id: null
cookie_secure: auto
cookie_samesite: lax
storage_factory_id: session.storage.factory.native
#esi: true
#fragments: true
php_errors:
log: true
http_client:
default_options:
verify_host: false
verify_peer: false
when@test:
framework:
test: true

View File

@ -2,6 +2,7 @@ lexik_jwt_authentication:
secret_key: '%env(resolve:JWT_SECRET_KEY)%'
public_key: '%env(resolve:JWT_PUBLIC_KEY)%'
pass_phrase: '%env(JWT_PASSPHRASE)%'
token_ttl: 86400 # 1 day
api_platform:
check_path: /auth/login
username_path: username

View File

@ -0,0 +1,8 @@
mercure:
hubs:
default:
url: '%env(MERCURE_URL)%'
public_url: '%env(MERCURE_PUBLIC_URL)%'
jwt:
secret: '%env(MERCURE_JWT_SECRET)%'
publish: '*'

View File

@ -0,0 +1,62 @@
monolog:
channels:
- deprecation # Deprecations are logged in the dedicated "deprecation" channel when it exists
when@dev:
monolog:
handlers:
main:
type: stream
level: info
path: "%kernel.logs_dir%/%kernel.environment%.log"
formatter: App\Formatter\CustomLineFormatter
channels: ["!event"]
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine", "!console"]
syslog:
type: syslog
ident: "ogcore"
level: info
formatter: App\Formatter\CustomLineFormatter
channels: ["!event"]
when@test:
monolog:
handlers:
main:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: error
nested:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
when@prod:
monolog:
handlers:
main:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: error
formatter: App\Formatter\CustomLineFormatter
channels: ["!event"]
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine"]
syslog:
type: syslog
ident: "ogcore"
level: info
formatter: App\Formatter\CustomLineFormatter
channels: ["!event"]
deprecation:
type: stream
channels: [deprecation]
path: "%kernel.logs_dir%/%kernel.environment%.log"
formatter: monolog.formatter.json

View File

@ -11,7 +11,7 @@ security:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
stateless: true
stateless: false
provider: app_user_provider
entry_point: jwt
json_login:
@ -29,7 +29,12 @@ security:
- { path: ^/$, roles: PUBLIC_ACCESS } # Allows accessing the Swagger UI
- { path: ^/docs, roles: PUBLIC_ACCESS } # Allows accessing the Swagger UI docs
- { path: ^/auth/login, roles: PUBLIC_ACCESS }
- { path: ^/opengnsys/rest, roles: PUBLIC_ACCESS }
- { path: ^/og-repository/webhook, roles: PUBLIC_ACCESS }
- { path: ^/og-lives/install/webhook, roles: PUBLIC_ACCESS }
- { path: ^/auth/refresh, roles: PUBLIC_ACCESS }
- { path: ^/menu-browser, roles: PUBLIC_ACCESS }
- { path: ^/menu/, roles: PUBLIC_ACCESS }
- { path: ^/, roles: IS_AUTHENTICATED_FULLY }
when@test:

View File

@ -0,0 +1,8 @@
framework:
default_locale: es
translator:
default_path: '%kernel.project_dir%/translations'
fallbacks:
- en
- es
providers:

View File

@ -14,4 +14,4 @@ when@test:
intercept_redirects: false
framework:
profiler: { collect: false }
profiler: { collect: false }

View File

@ -4,7 +4,9 @@ imports:
parameters:
services:
# default configuration for services in *this* file
App\DependencyInjection\JsonEnvVarLoader:
tags: ['container.env_var_loader']
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
@ -12,7 +14,6 @@ services:
App\:
resource: '../src/'
exclude:
- '../src/DependencyInjection/'
- '../src/Entity/'
- '../src/Kernel.php'
@ -21,6 +22,12 @@ services:
- { name: api_platform.doctrine.orm.query_extension.collection }
- { name: api_platform.doctrine.orm.query_extension.item }
App\EventListener\LocaleSubscriber:
arguments:
$defaultLocale: '%kernel.default_locale%'
tags:
- { name: kernel.event_subscriber }
App\OpenApi\OpenApiFactory:
decorates: 'api_platform.openapi.factory'
arguments: [ '@App\OpenApi\OpenApiFactory.inner' ]
@ -90,3 +97,62 @@ services:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\ViewProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\OgLiveProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\RemoteCalendarProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\CommandProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\PxeTemplateProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\CommandGroupProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\CommandTaskProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\SubnetProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\TraceProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\RemoteCalendarRuleProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\ImageRepositoryProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'
App\State\Provider\ImageImageRepositoryProvider:
bind:
$collectionProvider: '@api_platform.doctrine.orm.state.collection_provider'
$itemProvider: '@api_platform.doctrine.orm.state.item_provider'

View File

@ -1,4 +1,16 @@
services:
api_platform.filter.calendar.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~,}
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.calendar.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'exact'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.client.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
@ -8,7 +20,29 @@ services:
api_platform.filter.client.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', 'serialNumber': 'exact', organizationalUnit.id: 'exact' } ]
arguments: [ { 'id': 'exact', 'uuid': exact, 'name': 'partial', 'serialNumber': 'exact', 'template.id': 'exact', status: 'exact', organizationalUnit.id: 'exact', mac: 'exact', ip: 'exact', subnet.id: 'exact' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.client.exist:
parent: 'api_platform.doctrine.orm.exists_filter'
arguments: [{'subnet': ~, 'template': ~ }]
tags: [ 'api_platform.filter' ]
api_platform.filter.command.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.command.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.command.boolean:
parent: 'api_platform.doctrine.orm.boolean_filter'
arguments: [ { 'enabled': ~, 'readOnly': ~ } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.hardware.order:
@ -18,6 +52,44 @@ services:
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.image.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.image.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', 'repository.id': 'exact', status: 'exact'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.image.boolean:
parent: 'api_platform.doctrine.orm.boolean_filter'
arguments: [ { 'created': ~ } ]
tags: [ 'api_platform.filter' ]
image.repository_filter:
parent: 'App\Filter\ImageSearchRepositoryFilter'
tags: [ 'api_platform.filter' ]
api_platform.filter.og_live.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.og_live.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', 'status': 'exact' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.og_live.boolean:
parent: 'api_platform.doctrine.orm.boolean_filter'
arguments: [ { 'isDefault': ~, 'installed': ~ } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.hardware.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial' } ]
@ -35,6 +107,18 @@ services:
arguments: [ { 'id': 'exact', 'name': 'exact', 'title': 'exact' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.operative_system.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.operative_system.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.organizational_unit.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
@ -47,16 +131,131 @@ services:
arguments: [ { id: 'exact', name: 'partial', type: 'exact', parent.id: 'exact'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.organizational_unit.group_filter:
parent: 'api_platform.serializer.group_filter'
arguments: [ 'groups', true, ['organizational-unit:read:collection:short'] ]
tags: [ 'api_platform.filter' ]
api_platform.filter.partition.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'usage': ~ }
$properties: { 'id': ~, 'usage': ~, 'partitionNumber': 'ASC' }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.partition.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'usage': 'exact', 'diskNumber': 'exact' } ]
arguments: [ { 'id': 'exact', 'usage': 'exact', 'diskNumber': 'exact', 'client.id': 'exact' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.pxe_template.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.pxe_boot_file.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'template': exact } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.pxe_template.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.pxe_template.boolean:
parent: 'api_platform.doctrine.orm.boolean_filter'
arguments: [ { 'synchronized': ~ } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.remote_calendar.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.remote_calendar.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.repository.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.repository.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', 'ip': 'partial', 'status': 'exact'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.image_image_repository.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.image_image_repository.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', 'ip': 'partial', 'status': 'exact', 'repository.id': 'exact'} ]
tags: [ 'api_platform.filter' ]
repository.not_equal_filter:
parent: 'App\Filter\NotEqualIdFilter'
tags: [ 'api_platform.filter' ]
api_platform.filter.software.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.software.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', type: 'exact'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.software_profile.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'description': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.software_profile.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'description': 'partial' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.subnet.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'name': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.subnet.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'name': 'partial', ip: 'exact', nextServer: 'exact', netmask: 'exact', bootFileName: 'partial'} ]
tags: [ 'api_platform.filter' ]
api_platform.filter.trace.search:
parent: 'api_platform.doctrine.orm.search_filter'
arguments: [ { 'id': 'exact', 'command.id': 'exact', 'client.id': 'exact', status: 'exact' } ]
tags: [ 'api_platform.filter' ]
api_platform.filter.trace.order:
parent: 'api_platform.doctrine.orm.order_filter'
arguments:
$properties: { 'id': ~, 'command': ~ }
$orderParameterName: 'order'
tags: [ 'api_platform.filter' ]
api_platform.filter.user.order:

View File

@ -0,0 +1,3 @@
services:
App\EventListener\ClientStatusNotifier:
tags: ~ # Esto elimina el listener en el entorno de test

4
debian/CHANGELOG.md vendored 100644
View File

@ -0,0 +1,4 @@
# Changelog
## [Unreleased]

53
debian/changelog vendored 100644
View File

@ -0,0 +1,53 @@
ogcore (0.9.2-1) unstable; urgency=medium
* Added mercure service in docker compose file for deployments.
-- Manuel Aranda <maranda@qindel.com> Wed, 12 Mar 2025 14:00:00 +0200
ogcore (0.9.1-1) unstable; urgency=medium
* Corrección en la cancelación de transmisiones p2p.
-- Manuel Aranda <maranda@qindel.com> Wed, 12 Mar 2025 13:00:00 +0200
ogcore (0.9.0-1) unstable; urgency=medium
* Nueva funcionalidad para tener notificaciones en tiempo real. Instalación de bundle "Mercure".
* Creación de EventListener en Symfony, para publicar mensajes en Mercure cuando se realicen cambios en la base de datos.
* Nuevo endpoint "backup image". Integración con ogRepository.
* Nuevo campo en "usuarios" para escoger la visualización por defecto de la vista "grupos".
* Nuevo campo "dns" en "subredes" para gestionar los servidores DNS.
* Integración de endpoint ogRepository para verificar la integridad de una imagen.
* Nueva funcionalidad para cancelar despliegues de imágenes.
* Añadido nuevo campo "cancelado" en trazas.
* Cambios en logs: salida redirigida de stderr a file.log.
* Modificación en módulo DHCP: gestión de equipos con una única llamada a la API.
* Cambios en las respuestas de acciones masivas en equipos para evitar fallos en peticiones parciales.
-- Manuel Aranda <maranda@qindel.com> Tue, 04 Mar 2025 15:00:00 +0200
ogcore (0.8.1-1) unstable; urgency=medium
* Corrección de bug en el deploy de imágenes.
-- Manuel Aranda <maranda@qindel.com> Tue, 25 Feb 2025 10:00:00 +0200
ogcore (0.8.0-1) unstable; urgency=medium
* Nuevos campos en "aulas" para la jerarquía en clientes.
* Nueva funcionalidad "imagen global". Integración con ogRepository.
* Limpieza en campos "name" y "date" de ogLive. Ahora se parsea el campo "filename" para mejorar la experiencia del usuario.
* Corrección de bug que impedía borrar un cliente si tenía una traza enlazada.
-- Manuel Aranda <maranda@qindel.com> Fri, 10 Jan 2025 12:00:00 +0200
ogcore (0.7.3-1) unstable; urgency=medium
* Adaptados cambios en los endpoints para multiselección de clientes.
* Se agregó la funcionalidad de importar/exportar. Integración con ogRepository.
* Se agregó la funcionalidad de borrar imágenes. Integración con ogRepository.
* Se agregó el modo "TORRENT" y "UDPCAST" en el despliegue de imágenes.
* Refactorización del webhook de ogRepository.
-- Manuel Aranda <maranda@qindel.com> Fri, 03 Jan 2025 11:00:00 +0200

1
debian/compat vendored 100644
View File

@ -0,0 +1 @@
12

16
debian/control vendored 100644
View File

@ -0,0 +1,16 @@
Source: ogcore
Section: web
Priority: optional
Maintainer: Nicolas Arenas <nicolas.arenas@qindel.com>
Build-Depends: debhelper (>= 12), composer, php-cli, php-mysql, php-fpm, libzip-dev, zip, unzip
Standards-Version: 4.5.0
Package: ogcore
Architecture: all
Depends: ${misc:Depends}, mariadb-server, systemd, nginx, libzip-dev, zip, unzip,
php8.3-opcache, php8.3-bcmath, php8.3-cli, php8.3-curl, php8.3-fpm,
php8.3-gd, php8.3-ldap, php8.3-mbstring, php8.3-mysql, php8.3-common,
php8.3-xml, php8.3-zip, mercure
Description: OpenGnsys Core
OgCore package is responsible about management of Opengnsys platform
OpenGnsys Core is a platform for system management.

21
debian/convert.sh vendored 100644
View File

@ -0,0 +1,21 @@
#!/bin/bash
set -x
INPUT_FILE="changelog"
OUTPUT_FILE="CHANGELOG.md"
echo "# Changelog" > "$OUTPUT_FILE"
echo -e "\n## [Unreleased]\n" >> "$OUTPUT_FILE"
# Procesar el changelog de Debian
awk '
/^ogcore/ {
version = $2
gsub(/[()]/, "", version) # Eliminar paréntesis de la versión
printf "\n## [%s] - %s\n\n", version, $NF
}
/^\s*\*/ {
gsub(/^\s*\*\s*/, "- ", $0) # Convertir a lista de viñetas
print $0 >> "'"$OUTPUT_FILE"'"
}
' "$INPUT_FILE"

43
debian/copyright vendored 100644
View File

@ -0,0 +1,43 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: <url://example.com>
Upstream-Name: ogcore
Upstream-Contact: <preferred name and address to reach the upstream project>
Files:
*
Copyright:
<years> <put author's name and email here>
<years> <likewise for another author>
License: GPL-3.0+
Files:
debian/*
Copyright:
2025 root <root@build>
License: GPL-3.0+
License: GPL-3.0+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Comment:
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
# Please also look if there are files or directories which have a
# different copyright/license attached and list them here.
# Please avoid picking licenses with terms that are more restrictive than the
# packaged work, as it may make Debian's contributions unacceptable upstream.
#
# If you need, there are some extra license texts available in two places:
# /usr/share/debhelper/dh_make/licenses/
# /usr/share/common-licenses/

1
debian/debhelper-build-stamp vendored 100644
View File

@ -0,0 +1 @@
ogcore

2
debian/files vendored 100644
View File

@ -0,0 +1,2 @@
ogcore_1.0.5+develop20250310-1_all.deb web optional
ogcore_1.0.5+develop20250310-1_amd64.buildinfo web optional

18
debian/ogcore.install vendored 100644
View File

@ -0,0 +1,18 @@
bin/* /opt/opengnsys/ogcore/api/bin/
config/* /opt/opengnsys/ogcore/api/config/
migrations/* /opt/opengnsys/ogcore/api/migrations/
public/* /opt/opengnsys/ogcore/api/public/
src/* /opt/opengnsys/ogcore/api/src/
swagger-assets/* /opt/opengnsys/ogcore/api/swagger-assets/
templates/* /opt/opengnsys/ogcore/api/templates/
translations/* /opt/opengnsys/ogcore/api/translations/
var/* /opt/opengnsys/ogcore/api/var/
vendor/* /opt/opengnsys/ogcore/api/vendor/
composer.json /opt/opengnsys/ogcore/api/
composer.lock /opt/opengnsys/ogcore/api/
symfony.lock /opt/opengnsys/ogcore/api/
.env.local.php /opt/opengnsys/ogcore/api/
env.json /opt/opengnsys/ogcore/api/
etc /opt/opengnsys/ogcore/
docker/certs/* /opt/opengnsys/ogcore/etc/nginx/certs/

160
debian/ogcore.postinst vendored 100644
View File

@ -0,0 +1,160 @@
#!/bin/bash
set -e
set -x
. /usr/share/debconf/confmodule
restore_config_if_modified() {
local new="$1"
local backup="$1.bak"
if [ -f "$backup" ]; then
if ! cmp -s "$new" "$backup"; then
echo ">>> Archivo modificado por el usuario detectado en $new"
echo " - Guardando archivo nuevo como ${new}.new"
mv -f "$new" "${new}.new"
echo " - Restaurando archivo anterior desde backup"
mv -f "$backup" "$new"
else
echo ">>> El archivo $new no ha cambiado desde la última versión, eliminando backup"
rm -f "$backup"
fi
fi
}
USER="opengnsys"
# Detectar si es una instalación nueva o una actualización
if [ "$1" = "configure" ] && [ -z "$2" ]; then
# Detectar IP de la interfaz de red asociad a la ruta por defecto.
IP=$(ip -4 route get 8.8.8.8 | grep -oP '(?<=src )[\d.]+')
echo ">>> Instalación nueva detectada."
# Solicitar credenciales solo en instalación nueva
db_input high opengnsys/ogcore_adminUser || true
db_go
db_get opengnsys/ogcore_adminUser
ADMIN_USER="$RET"
db_input high opengnsys/ogcore_adminPass || true
db_go
db_get opengnsys/ogcore_adminPass
ADMIN_PASS="$RET"
cd /opt/opengnsys/ogcore/api
# Configuración inicial
echo ">>> Configurando base de datos y permisos"
mariadb -e "ALTER USER 'root'@'localhost' IDENTIFIED VIA unix_socket OR mysql_native_password USING PASSWORD('root');"
echo ">>> Creando par de claves para JWT"
php bin/console lexik:jwt:generate-keypair --overwrite
echo ">>> Creando base de datos"
php bin/console doctrine:database:create --if-not-exists
php bin/console doctrine:migrations:migrate --no-interaction
echo ">>> Cargando datos iniciales"
php bin/console opengnsys:load-default-user
php bin/console app:load-default-user-groups
php bin/console app:load-default-commands
php bin/console opengnsys:load-default-menu
echo ">>> Configurando servidor web y servicios"
ln -s /opt/opengnsys/ogcore/etc/nginx/sites-available/ogcore.conf /etc/nginx/sites-enabled/ogcore.conf
ln -s /opt/opengnsys/ogcore/etc/nginx/sites-available/mercure.conf /etc/nginx/sites-enabled/mercure.conf
ln -s /opt/opengnsys/ogcore/etc/php/8.3/fpm/pool.d/ogcore-fpm.conf /etc/php/8.3/fpm/pool.d/ogcore-fpm.conf
ln -s /opt/opengnsys/ogcore/etc/systemd/system/og-mercure.service /etc/systemd/system/og-mercure.service
echo ">>> Configurando permisos de archivos"
chown opengnsys:www-data /opt/opengnsys/
chown -R opengnsys:www-data /opt/opengnsys/ogcore
systemctl daemon-reload
systemctl enable og-mercure
systemctl restart og-mercure
systemctl restart nginx
systemctl restart php8.3-fpm
#Obteniendo bearer token
BEARER=$(curl -sk -X 'POST' 'https://localhost:8443/auth/login' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ "username": "ogadmin", "password": "12345678" }' | jq -r .token)
# Creando nuevo repo
curl -skL -X POST 'https://localhost:8443/image-repositories' \
-H "Authorization: Bearer $BEARER" \
-H 'Content-Type: application/json' \
-d "{ \"name\": \"Repository 1\", \"ip\": \"$IP\", \"comments\": \"Repositorio creado automaticamente por oginstaller\" }"
# Solo gestionar credenciales en instalación nueva
if [ "$ADMIN_USER" == "ogadmin" ]; then
echo ">>> Cambiando contraseña de ogadmin"¡
OGADMIN_UUID=$(curl -skL "https://localhost:8443/users/?username=ogadmin" \
-H 'accept: application/json' \
-H "Authorization: Bearer $BEARER" | jq -r '.[0].uuid')
curl -skL -X PUT "https://localhost:8443/users/$OGADMIN_UUID/reset-password" \
-H 'accept: application/ld+json' \
-H 'Content-Type: application/ld+json' \
-H "Authorization: Bearer $BEARER" \
-d "{ \"currentPassword\": \"12345678\", \"newPassword\": \"$ADMIN_PASS\", \"repeatNewPassword\": \"$ADMIN_PASS\" }"
echo ">>> Contraseña de ogadmin cambiada."
else
echo ">>> Creando nuevo usuario administrador: $ADMIN_USER"
curl -skL --location 'https://localhost:8443/users' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $BEARER" \
--data "{ \"username\": \"$ADMIN_USER\", \"password\": \"$ADMIN_PASS\", \"roles\": [\"ROLE_SUPER_ADMIN\"] }"
echo ">>> Usuario administrador $ADMIN_USER creado."
fi
# Install crontab
echo ">>> Configurando cron para comprobar disponibilidad de clientes"
cp /opt/opengnsys/ogcore/etc/cron.d/opengnsys-check-clients /etc/cron.d/opengnsys-check-clients
chmod 644 /etc/cron.d/opengnsys-check-clients
chown root:root /etc/cron.d/opengnsys-check-clients
elif [ "$1" = "configure" ] && [ -n "$2" ]; then
echo ">>> Actualización detectada desde la versión $2"
# Restaurar archivos de configuración si han sido modificados
restore_config_if_modified "/opt/opengnsys/ogcore/etc/nginx/sites-available/ogcore.conf"
restore_config_if_modified "/opt/opengnsys/ogcore/etc/nginx/sites-available/mercure.conf"
restore_config_if_modified "/opt/opengnsys/ogcore/etc/php/8.3/fpm/pool.d/ogcore-fpm.conf"
restore_config_if_modified "/opt/opengnsys/ogcore/etc/systemd/system/og-mercure.service"
restore_config_if_modified "/opt/opengnsys/ogcore/api/env.json"
cd /opt/opengnsys/ogcore/api
echo ">>> Aplicando migraciones de base de datos"
php bin/console doctrine:migrations:migrate --no-interaction
echo ">>> Configurando servidor web y servicios"
[ ! -L /etc/nginx/sites-enabled/ogcore.conf ] && ln -s /opt/opengnsys/ogcore/etc/nginx/sites-available/ogcore.conf /etc/nginx/sites-enabled/ogcore.conf
[ ! -L /etc/php/8.3/fpm/pool.d/ogcore-fpm.conf ] && ln -s /opt/opengnsys/ogcore/etc/php/8.3/fpm/pool.d/ogcore-fpm.conf /etc/php/8.3/fpm/pool.d/ogcore-fpm.conf
[ ! -L /etc/systemd/system/og-mercure.service ] && ln -s /opt/opengnsys/ogcore/etc/systemd/system/og-mercure.service /etc/systemd/system/og-mercure.service
echo ">>> Configurando permisos de archivos"
chown opengnsys:www-data /opt/opengnsys/
chown -R opengnsys:www-data /opt/opengnsys/ogcore
if [ ! -f /etc/cron.d/opengnsys-check-clients ]; then
echo ">>> Configurando cron para comprobar disponibilidad de clientes"
cp /opt/opengnsys/ogcore/etc/cron.d/opengnsys-check-clients /etc/cron.d/opengnsys-check-clients
chmod 644 /etc/cron.d/opengnsys-check-clients
chown root:root /etc/cron.d/opengnsys-check-clients
else
echo ">>> El archivo de cron ya existe, no se realizan cambios se ajustan permisos"
chmod 644 /etc/cron.d/opengnsys-check-clients
chown root:root /etc/cron.d/opengnsys-check-clients
fi
systemctl daemon-reload
systemctl enable og-mercure
systemctl restart og-mercure
systemctl restart nginx
systemctl restart php8.3-fpm
fi
# Recargar systemd y reiniciar servicios en ambos casos
exit 0

6
debian/ogcore.postrm.debhelper vendored 100644
View File

@ -0,0 +1,6 @@
# Automatically added by dh_installdebconf/13.14.1ubuntu5
if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
db_purge
fi
# End automatically added section

42
debian/ogcore.preinst vendored 100644
View File

@ -0,0 +1,42 @@
#!/bin/bash
set -e
backup_file_if_exists() {
local original="$1"
local backup="$1.bak"
if [ -e "$original" ]; then
echo " - Guardando backup de $original en $backup"
cp -a "$original" "$backup"
fi
}
CONFIG_FILE="/opt/opengnsys/ogcore/api/env.json"
BACKUP_FILE="/opt/opengnsys/ogcore/api/env.json.bak"
# Asegurarse de que el usuario exista
USER="opengnsys"
HOME_DIR="/opt/opengnsys"
if id "$USER" &>/dev/null; then
echo "El usuario $USER ya existe."
else
echo "Creando el usuario $USER con home en $HOME_DIR."
useradd -m -d "$HOME_DIR" -s /bin/bash "$USER"
fi
CONFIG_FILE="/opt/opengnsys/ogcore/api/env.json"
BACKUP_FILE="/opt/opengnsys/ogcore/api/env.json.bak"
# Solo hacemos backup si el archivo existe y es una actualización (posición 1 = upgrade)
if [ "$1" = "upgrade" ]; then
echo ">>> Backup de archivos de configuración reales en /opt/opengnsys"
backup_file_if_exists "/opt/opengnsys/ogcore/etc/nginx/sites-available/ogcore.conf"
backup_file_if_exists "/opt/opengnsys/ogcore/etc/nginx/sites-available/mercure.conf"
backup_file_if_exists "/opt/opengnsys/ogcore/etc/php/8.3/fpm/pool.d/ogcore-fpm.conf"
backup_file_if_exists "/opt/opengnsys/ogcore/etc/systemd/system/og-mercure.service"
backup_file_if_exists "/opt/opengnsys/ogcore/api/env.json"
fi
exit 0

19
debian/ogcore.prerm vendored 100755
View File

@ -0,0 +1,19 @@
#!/bin/bash
set -e
set -x
if [ "$1" = "remove" ] || [ "$1" = "upgrade" ]; then
# Eliminar enlaces simbólicos creados en postinst
rm -f /etc/nginx/sites-enabled/ogcore.conf
rm -f /etc/php/8.3/fpm/pool.d/ogcore-fpm.conf
# Deshabilitar el servicio antes de eliminarlo
systemctl disable og-mercure || true
systemctl stop og-mercure || true
systemctl restart nginx || true
systemctl restart php8.3-fpm || true
rm -f /etc/systemd/system/og-mercure.service
systemctl daemon-reload
fi
exit 0

10
debian/ogcore.templates vendored 100644
View File

@ -0,0 +1,10 @@
Template: opengnsys/ogcore_adminUser
Type: string
Default: ogadmin
Description: Introduzca el nombre de usuario para la configuración
Template: opengnsys/ogcore_adminPass
Type: password
Default: 12345678
Description: Introduzca la contraseña

12
debian/rules vendored 100755
View File

@ -0,0 +1,12 @@
#!/usr/bin/make -f
%:
dh $@
# Ejecutar composer install durante la fase de construcción
override_dh_auto_build:
export COMPOSER_ALLOW_SUPERUSER=1
export APP_ENV=prod
dh_auto_build
COMPOSER_ALLOW_SUPERUSER=1 APP_ENV=prod composer install --no-dev --no-interaction --no-progress --optimize-autoloader
COMPOSER_ALLOW_SUPERUSER=1 APP_ENV=prod composer dump-env prod

1
debian/source/format vendored 100644
View File

@ -0,0 +1 @@
3.0 (native)

View File

@ -0,0 +1,47 @@
services:
database:
container_name: ogcore-database
image: mariadb:10.11
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ogcore
MYSQL_PASSWORD: root
MYSQL_USER: admin
ports:
- 3336:3306
volumes:
- database_data:/var/lib/mysql
networks:
- ogcore-network
nginx:
container_name: ogcore-nginx
build:
context: .
dockerfile: ./docker/Dockerfile-nginx
depends_on:
- php
ports:
- 8080:80
volumes:
- ./public:/var/www/html/public:cached
networks:
- ogcore-network
image: ogcore-nginx:static
php:
container_name: ogcore-php
build:
context: .
dockerfile: ./docker/Dockerfile-jenkins-php
depends_on:
- database
networks:
- ogcore-network
image: ogcore-php:static
volumes:
database_data:
networks:
ogcore-network:

View File

@ -0,0 +1,45 @@
services:
database:
container_name: ogcore-database
image: mariadb:10.11
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ogcore
MYSQL_PASSWORD: root
MYSQL_USER: admin
ports:
- 3336:3306
volumes:
- database_data:/var/lib/mysql
networks:
- ogcore-network
nginx:
container_name: ogcore-nginx
build:
context: .
dockerfile: ./docker/Dockerfile-nginx
depends_on:
- php
ports:
- 8080:80
volumes:
- ./public:/var/www/html/public:cached
networks:
- ogcore-network
php:
container_name: ogcore-php
build:
context: .
dockerfile: ./docker/Dockerfile-jenkins-php
depends_on:
- database
networks:
- ogcore-network
volumes:
database_data:
networks:
ogcore-network:

View File

@ -0,0 +1,72 @@
services:
database:
container_name: ogcore-database
image: mariadb:10.11
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ogcore
MYSQL_PASSWORD: root
MYSQL_USER: admin
ports:
- 3336:3306
volumes:
- database_data:/var/lib/mysql
networks:
- ogcore-network
nginx:
container_name: ogcore-nginx
depends_on:
- php
ports:
- 8080:80
- 8443:443
- 3000:3000
volumes:
- ogpublic:/var/www/html/public:cached
networks:
- ogcore-network
image: opengnsys/ogcore-nginx:static
php:
container_name: ogcore-php
depends_on:
- database
volumes:
- ogpublic:/var/www/html/public
- /opt/opengnsys/ogCore/etc/.env:/var/www/html/.env
- /opt/opengnsys/ogCore/etc/env.json://var/www/html/env.json
networks:
- ogcore-network
image: opengnsys/ogcore-php:static
mercure:
image: dunglas/mercure
restart: unless-stopped
container_name: ogcore-mercure
environment:
# Uncomment the following line to disable HTTPS,
SERVER_NAME: ':3000'
MERCURE_PUBLISHER_JWT_KEY: '!ChangeThisMercureHubJWTSecretKey!'
MERCURE_SUBSCRIBER_JWT_KEY: '!ChangeThisMercureHubJWTSecretKey!'
MERCURE_EXTRA_DIRECTIVES: |
cors_origins *
# Comment the following line to disable the development mode
command: /usr/bin/caddy run --config /etc/caddy/dev.Caddyfile
# ports:
# - "3000:3000"
volumes:
- mercure_data:/data
- mercure_config:/config
networks:
- ogcore-network
volumes:
database_data:
ogpublic:
mercure_data:
mercure_config:
networks:
ogcore-network:

View File

@ -23,8 +23,10 @@ services:
- php
ports:
- 8080:80
- 8443:443 # Añadir el puerto 443
volumes:
- ./public:/var/www/html/public:cached
- ./docker/certs:/etc/nginx/certs # Montar certificados en Nginx
networks:
- ogcore-network
@ -37,14 +39,34 @@ services:
- ./:/var/www/html
depends_on:
- database
networks:
- ogcore-network
mercure:
image: dunglas/mercure
restart: unless-stopped
container_name: ogcore-mercure
environment:
XDEBUG_CLIENT_HOST: 127.17.0.1
XDEBUG_CLIENT_PORT: 9003
PHP_IDE_CONFIG: serverName=ogcore
# Uncomment the following line to disable HTTPS,
SERVER_NAME: ':3000'
MERCURE_PUBLISHER_JWT_KEY: '!ChangeThisMercureHubJWTSecretKey!'
MERCURE_SUBSCRIBER_JWT_KEY: '!ChangeThisMercureHubJWTSecretKey!'
MERCURE_EXTRA_DIRECTIVES: |
cors_origins *
# Comment the following line to disable the development mode
command: /usr/bin/caddy run --config /etc/caddy/dev.Caddyfile
ports:
- "3000:3000"
volumes:
- mercure_data:/data
- mercure_config:/config
networks:
- ogcore-network
volumes:
mercure_data:
mercure_config:
database_data:
networks:

View File

@ -0,0 +1,24 @@
FROM php:8.3-fpm-alpine
ENV COMPOSER_ALLOW_SUPERUSER=1
# Install PHP extensions
RUN docker-php-ext-install pdo mysqli pdo_mysql opcache
# Install Zip and more extension
RUN apk add --no-cache bash libzip-dev zip unzip
RUN docker-php-ext-install zip
# Install Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN composer self-update
# Install bash
RUN apk add --no-cache bash git jq moreutils openssh rsync yq
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
RUN chmod +x /usr/local/bin/install-php-extensions
RUN install-php-extensions sockets
COPY . /var/www/html

View File

@ -1,2 +1,7 @@
FROM nginx:latest
COPY ./docker/default.conf /etc/nginx/conf.d/default.conf
# Copiar el archivo de configuración de Nginx
COPY ./docker/default.conf /etc/nginx/conf.d/default.conf
# Copiar los certificados SSL
COPY ./docker/certs /etc/nginx/certs

View File

@ -19,12 +19,14 @@ ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/do
RUN chmod +x /usr/local/bin/install-php-extensions
RUN install-php-extensions sockets
# Add xdebug
RUN apk add --no-cache --virtual .build-deps $PHPIZE_DEPS
RUN apk add --update linux-headers
RUN pecl install xdebug
RUN docker-php-ext-enable xdebug
RUN apk del -f .build-deps
# Generate SSH keys
RUN ssh-keygen -t rsa -b 4096 -f /root/.ssh/id_rsa -N ""
COPY ./docker/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Optionally, copy public key to a specific location
RUN cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
# Expose any ports you may need
EXPOSE 9000
# Command to run the PHP-FPM server
CMD ["php-fpm"]

View File

@ -0,0 +1,28 @@
-----BEGIN CERTIFICATE-----
MIIExTCCAq2gAwIBAgICEAEwDQYJKoZIhvcNAQELBQAwSTELMAkGA1UEBhMCRVMx
DzANBgNVBAgMBk1hZHJpZDEPMA0GA1UEBwwGTWFkcmlkMRgwFgYDVQQDDA9jYS51
ZHMtdGVzdC5uZXQwHhcNMjQxMDA5MTQyODM3WhcNMjUxMDE5MTQyODM3WjBNMQsw
CQYDVQQGEwJFUzEPMA0GA1UECAwGTWFkcmlkMQ8wDQYDVQQHDAZNYWRyaWQxHDAa
BgNVBAMME29nY29yZS51ZHMtdGVzdC5uZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IB
DwAwggEKAoIBAQDaT0uiHcCwxUtRiJAhMI1VBuUohIzQgBQ1pwOa8gfwJZGn+p5p
T6qVrDb2RGWL8kJyR0tohQ6BxwVirAYTs0Az2EzZrh26gAlMhEsmQdWjQuWeHiRk
tp+6ELfATSd97LwMe5KgJl80JYQDVHxryPxPTgbxB3tjmp8ErcrhQ58Omq2D6bnd
xrKCbgfSoZP+ZyqKY3sNbHIX3632zSwHnu8on2ltZiYbbs1I29onysM4Zj2eAjZP
ot3pTzt4uIYV+i0fyY3+STvBda10bgUsoFWAVcdG310oVsginkFbpnhZPPueUklw
YtsXPq/yPJwn/tIcbEZ7TO7Pvtlh9RqTne9VAgMBAAGjgbIwga8wHgYDVR0RBBcw
FYITb2djb3JlLnVkcy10ZXN0Lm5ldDAdBgNVHQ4EFgQUS+4OUtWxVvTVc1odUFUO
UR3dURswbgYDVR0jBGcwZaFNpEswSTELMAkGA1UEBhMCRVMxDzANBgNVBAgMBk1h
ZHJpZDEPMA0GA1UEBwwGTWFkcmlkMRgwFgYDVQQDDA9jYS51ZHMtdGVzdC5uZXSC
FECd/NYwzaJTHtQ002YnOD3ZKLs0MA0GCSqGSIb3DQEBCwUAA4ICAQAeHA6/lJIv
hQTySWOOLhnuWcej1DmQhbDzyrylLUfJe86qV7QCLpasXabDpOQzTK5yBkjCWtV2
YiXNx6eT1iGbs70+5fITjj2vhAT9bxi4WH49xU4q+vfxlfxTkA4/ZXTEEmb+B91Q
BVEF/7f13UiGV2yu4xbDptr98v/55OeycBgwLdNN7uw7EP6WK8ryLxlxvF+nqt1n
YHof/QqRJze3FKHlGhGvx1I3SEE+VwWW5hVbde3HkwlORf5ABr4fxbvudL+kwtMi
HmYV2oYvkYQZK0Vfcua0WAn9vKVBgnF6tXdqJTPG7p91dVe7bIbUdFgNBVBdh/md
SdESFWCghPQ6WYoB7/1WfPKVQ/0IBe7l8Yx+piNNl4WW2M7lOGf8mbBWUHNAgJjD
2u3440PfsPJgBniUuV4ILNhRNGbAjdk86oU8w2Vg6WR7xsQIBcukrHEm5wEW2RkW
bZMclPyUOzHh1l4dQZTyOp2LxYNqtfYXQuPDT6tvZV5hLuLMqQfdLVxuoi3KOgo2
GfaolX2sW/sA4fx1FAvEvEq7zEvchpocL3EYa/aUNySxMrgjKMc3AtyLYF48D8M7
1LZMj61TaPWUUalM/u32fEHhqOXJ1o0VX3gCY7c+hKhGFee8Aiyk/hrB2ED/Q/vR
cssM+sHHNwSYI/L+bjEkJDQtVZEztcQODQ==
-----END CERTIFICATE-----

View File

@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDaT0uiHcCwxUtR
iJAhMI1VBuUohIzQgBQ1pwOa8gfwJZGn+p5pT6qVrDb2RGWL8kJyR0tohQ6BxwVi
rAYTs0Az2EzZrh26gAlMhEsmQdWjQuWeHiRktp+6ELfATSd97LwMe5KgJl80JYQD
VHxryPxPTgbxB3tjmp8ErcrhQ58Omq2D6bndxrKCbgfSoZP+ZyqKY3sNbHIX3632
zSwHnu8on2ltZiYbbs1I29onysM4Zj2eAjZPot3pTzt4uIYV+i0fyY3+STvBda10
bgUsoFWAVcdG310oVsginkFbpnhZPPueUklwYtsXPq/yPJwn/tIcbEZ7TO7Pvtlh
9RqTne9VAgMBAAECggEADthSi9EbH8oiv4YaSu96xNvlrFYrHyh+d1GGmLw5lvZv
C62qpP2iW3AtAp0PDK+qHgxED/TwUhne/2E0PpWzWXMtcqX45ow7VaUvWQgkB2iO
paxmDCUxAl2NqTl15IW7GdwzUcmaMrkUW4ecuFWf9qKXLT+1f8XtZ0uMHrpS8BKr
bDM5oeushD6/ES32ecBIG3eJafSMESUux1fq/frzHEajS0fkYqFxi2uLYJdPLXC/
YdVan7sIxOU3gxRROFDYLJ1uaksvUMM31oIujuxngdLTrf/K61RJGBFMeu1UIfrO
v6/9tqZgLIPTaC1nYMxjD+AtkwlY4C5vsPa8+jKtcQKBgQDz16/d/YSPxoa1QyPD
Ae/z+l13DGdk2+PdDavoyb1j11qwl4pgSGIA2uR3XeXg/dtmZaFk+KXUC+mHPsiM
TvxjoqjzP8LMXPJkRRzzTAwMjYzI8/ZAmCW+4q4Sxv3Dw4UQd0tCYi9ruMtXhnqp
agMKT2CNAikmbWdIu4S5uR6GDQKBgQDlMbfB5yJQsanW29VEJkUv+JBKZvxC7v59
2EmZEbW1hqYHR7PA2qvSnNXvsQKRIcJtmrzf3koDhXN3mw59deBgT5FsUQCGxoK8
ALMYMKiYcCNLp1rpxoz63lFnSzpD+f2dLBj0sac5Ufw17O6Fjs5+ZqND32UaEXFW
CLrjBpPEaQKBgAjXIQEjV9L+l5Oqw3kmcNSflxPh1z3I2xIAlOLzrXIZNKiCVfn3
pdXyGaZaOSNXEMU9mgRXH2v4opbMp+iuVGgoVYe8IAvYstD/0HThpO4vk5MVhTAC
VBv/i+ASZtDaHdDjAk99z8pQAM9DiN7rgQC2sAFsuqEyBjSU19MD6x9hAoGAOSW1
cObF2qMB+y3jNlPoinaK29Jj8fiPgids6nrM+Q8y1LvfKSYdE63BdjuHrVJinVuo
3pUZlVkwGlGSQlwi70DHvN9Rp0lWDbSK82wmjaPgWRvIgmPcgSzv1Taft5Vc1FTL
gC/Px24W2gdSzgB2onPLH8BTADX7MX2Jw9O/AokCgYBK7kvg1/cmikj176JFn1AM
MBCwVKS1fvUyh0bctadVyM+RA22cVvLB5PEbPB+LbyK1PnHB3jivEa954bOuYo39
frRrRYZW4iP+oTqx8arcioaMW2K5urFtsqNrYVgkE5KDBAqFGSAyuKTAjftMxGqy
tORwgZ9jzgbBC0V8td6fqg==
-----END PRIVATE KEY-----

View File

@ -1,26 +1,71 @@
server {
listen 80;
server_name localhost;
root /var/www/html/public;
location / {
try_files $uri /index.php?$is_args$args;
# Redirigir todo el tráfico HTTP a HTTPS
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name localhost;
root /var/www/html/public;
index index.html index.php;
ssl_certificate /etc/nginx/certs/ogcore.uds-test.net.crt.pem;
ssl_certificate_key /etc/nginx/certs/ogcore.uds-test.net.key.pem;
location /opengnsys/rest/ous// {
rewrite ^/opengnsys/rest/ous//([0-9]+)/images /opengnsys/rest/ous/$1/images;
rewrite ^/opengnsys/rest/ous//([0-9]+)/labs /opengnsys/rest/ous/$1/labs;
}
location ~ ^/index.php(/|$) {
# Bloque principal para archivos
location / {
try_files $uri $uri/ /index.php?$args;
}
# Manejo de PHP
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass php:9000;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param DOCUMENT_ROOT $document_root;
internal;
fastcgi_param PATH_INFO $request_uri;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_script_name;
}
# Bloque para errores PHP
location ~ \.php$ {
return 404;
}
error_log /var/log/nginx/error.log;
error_log /var/log/nginx/error.log debug;
access_log /var/log/nginx/access.log;
}
server {
listen 3000 ssl http2;
listen [::]:3000 ssl http2;
ssl_certificate /etc/nginx/certs/ogcore.uds-test.net.crt.pem;
ssl_certificate_key /etc/nginx/certs/ogcore.uds-test.net.key.pem;
location / {
proxy_pass http://ogcore-mercure:3000/;
proxy_read_timeout 24h;
proxy_http_version 1.1;
proxy_set_header Connection "";
# Enable fast reply in SSE
proxy_buffering off;
## Be sure to set USE_FORWARDED_HEADERS=1 to allow the hub to use those headers ##
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

View File

@ -1,5 +0,0 @@
xdebug.mode=debug
xdebug.start_with_request=trigger
xdebug.discover_client_host = 1
xdebug.client_host=${XDEBUG_CLIENT_HOST}
xdebug.client_port=${XDEBUG_CLIENT_PORT}

6
entrypoint.sh 100644
View File

@ -0,0 +1,6 @@
#!/bin/sh
# Instalar certificados CA de Symfony si no existen
if [ ! -f /root/.symfony*/cacert.pem ]; then
symfony server:ca:install
fi

12
env.json 100644
View File

@ -0,0 +1,12 @@
{
"vars": {
"OG_BOOT_API_URL": "192.168.68.51:8082",
"OG_DHCP_API_URL": "192.168.68.51:8081",
"OG_CORE_IP": "192.168.68.62",
"OG_LOG_IP": "192.168.68.51",
"UDS_AUTH_LOGIN": "test",
"UDS_AUTH_USERNAME": "test",
"UDS_AUTH_PASSWORD": "test",
"UDS_URL": "https:\/\/localhost:8087\/uds\/rest\/"
}
}

View File

@ -0,0 +1 @@
*/5 * * * * opengnsys php -d memory_limit=512M /opt/opengnsys/ogcore/api/bin/console opengnsys:check-client-availability >> /opt/opengnsys/ogcore/api/var/log/cron.log 2>&1

View File

@ -0,0 +1,4 @@
SERVER_NAME=":3001"
MERCURE_PUBLISHER_JWT_KEY="!ChangeThisMercureHubJWTSecretKey!"
MERCURE_SUBSCRIBER_JWT_KEY="!ChangeThisMercureHubJWTSecretKey!"
MERCURE_EXTRA_DIRECTIVES="cors_origins *"

View File

@ -0,0 +1,44 @@
# Learn how to configure the Mercure.rocks Hub on https://mercure.rocks/docs/hub/config
{
{$GLOBAL_OPTIONS}
}
{$CADDY_EXTRA_CONFIG}
{$SERVER_NAME:localhost} {
log {
format filter {
fields {
request>uri query {
replace authorization REDACTED
}
}
}
}
encode zstd gzip
mercure {
# Publisher JWT key
publisher_jwt {env.MERCURE_PUBLISHER_JWT_KEY} {env.MERCURE_PUBLISHER_JWT_ALG}
# Subscriber JWT key
subscriber_jwt {env.MERCURE_SUBSCRIBER_JWT_KEY} {env.MERCURE_SUBSCRIBER_JWT_ALG}
# Permissive configuration for the development environment
cors_origins *
publish_origins *
demo
anonymous
subscriptions
# Extra directives
{$MERCURE_EXTRA_DIRECTIVES}
}
{$CADDY_SERVER_EXTRA_DIRECTIVES}
redir / /.well-known/mercure/ui/
respond /healthz 200
respond /robots.txt `User-agent: *
Disallow: /`
respond "Not Found" 404
}

View File

@ -0,0 +1,23 @@
server {
listen 3000 ssl http2;
listen [::]:3000 ssl http2;
ssl_certificate /opt/opengnsys/ogcore/etc/nginx/certs/ogcore.uds-test.net.crt.pem;
ssl_certificate_key /opt/opengnsys/ogcore/etc/nginx/certs/ogcore.uds-test.net.key.pem;
location / {
proxy_pass http://localhost:3001/;
proxy_read_timeout 24h;
proxy_http_version 1.1;
proxy_set_header Connection "";
# Enable fast reply in SSE
proxy_buffering off;
## Be sure to set USE_FORWARDED_HEADERS=1 to allow the hub to use those headers ##
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

View File

@ -0,0 +1,36 @@
server {
listen 8443 ssl;
server_name _;
root /opt/opengnsys/ogcore/api/public/;
index index.html index.php;
ssl_certificate /opt/opengnsys/ogcore/etc/nginx/certs/ogcore.uds-test.net.crt.pem;
ssl_certificate_key /opt/opengnsys/ogcore/etc/nginx/certs/ogcore.uds-test.net.key.pem;
location /opengnsys/rest/ous// {
rewrite ^/opengnsys/rest/ous//([0-9]+)/images /opengnsys/rest/ous/$1/images;
rewrite ^/opengnsys/rest/ous//([0-9]+)/labs /opengnsys/rest/ous/$1/labs;
}
# Bloque principal para archivos
location / {
try_files $uri $uri/ /index.php?$args;
}
# Manejo de PHP
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php8.3-fpm-ogcore.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $request_uri;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_script_name;
}
# Bloque para errores PHP
location ~ \.php$ {
return 404;
}
error_log /var/log/nginx/ogcore-error.log;
access_log /var/log/nginx/ogcore-access.log;
}

View File

@ -0,0 +1,12 @@
[ogcore]
user = opengnsys
group = www-data
listen = /run/php/php8.3-fpm-ogcore.sock
listen.owner = opengnsys
listen.group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

View File

@ -0,0 +1,27 @@
[Unit]
Description=Mercure Hub
After=network.target
Wants=network-online.target
[Service]
Type=simple
User=opengnsys
Group=opengnsys
WorkingDirectory=/opt/opengnsys/ogcore/
# Cargar variables de entorno desde archivo
EnvironmentFile=/opt/opengnsys/ogcore/etc/mercure/mercure-og.env
# Validar configuración antes de arrancar
ExecStartPre=/bin/sh -c '/usr/bin/mercure adapt -c /opt/opengnsys/ogcore/etc/mercure/mercure.orig.conf --envfile /opt/opengnsys/ogcore/etc/mercure/mercure-og.env > /opt/opengnsys/ogcore/etc/mercure/mercure.config'
ExecStartPre=/bin/sh -c '/usr/bin/mercure fmt --overwrite -c /opt/opengnsys/ogcore/etc/mercure/mercure.config'
# Iniciar y detener el servicio con la configuración generada
ExecStart=/usr/bin/mercure run -c /opt/opengnsys/ogcore/etc/mercure/mercure.config --envfile /opt/opengnsys/ogcore/etc/mercure/mercure-og.env
ExecStop=/usr/bin/mercure stop -c /opt/opengnsys/ogcore/etc/mercure/mercure.config
Restart=always
RestartSec=5s
[Install]
WantedBy=multi-user.target

View File

@ -1,81 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240617113606 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE client (id INT AUTO_INCREMENT NOT NULL, organizational_unit_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, serial_number VARCHAR(255) DEFAULT NULL, netiface VARCHAR(255) DEFAULT NULL, net_driver VARCHAR(255) DEFAULT NULL, mac VARCHAR(255) DEFAULT NULL, ip VARCHAR(255) DEFAULT NULL, status VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_C7440455D17F50A6 (uuid), INDEX IDX_C7440455FB84408A (organizational_unit_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, type VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_FE99E9E0D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware_profile (id INT AUTO_INCREMENT NOT NULL, organizational_unit_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_2D9A2460D17F50A6 (uuid), INDEX IDX_2D9A2460FB84408A (organizational_unit_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware_profile_hardware (hardware_profile_id INT NOT NULL, hardware_id INT NOT NULL, INDEX IDX_18C7E12CFA495C1 (hardware_profile_id), INDEX IDX_18C7E12C9CC762B (hardware_id), PRIMARY KEY(hardware_profile_id, hardware_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE menu (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, title VARCHAR(255) NOT NULL, resolution VARCHAR(255) NOT NULL, comments VARCHAR(255) DEFAULT NULL, public_url VARCHAR(255) DEFAULT NULL, private_url VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_7D053A93D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE network_settings (id INT AUTO_INCREMENT NOT NULL, menu_id INT DEFAULT NULL, hardware_profile_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, proxy VARCHAR(255) DEFAULT NULL, dns VARCHAR(255) DEFAULT NULL, netmask VARCHAR(255) DEFAULT NULL, router VARCHAR(255) DEFAULT NULL, ntp VARCHAR(255) DEFAULT NULL, p2p_time INT DEFAULT NULL, p2p_mode VARCHAR(255) DEFAULT NULL, mcast_ip VARCHAR(255) DEFAULT NULL, mcast_speed INT DEFAULT NULL, mcast_mode VARCHAR(255) DEFAULT NULL, mcast_port INT DEFAULT NULL, validation TINYINT(1) DEFAULT NULL, UNIQUE INDEX UNIQ_48869B54D17F50A6 (uuid), INDEX IDX_48869B54CCD7E912 (menu_id), INDEX IDX_48869B54CFA495C1 (hardware_profile_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE organizational_unit (id INT AUTO_INCREMENT NOT NULL, parent_id INT DEFAULT NULL, network_settings_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, path VARCHAR(255) DEFAULT NULL, level INT DEFAULT NULL, slug VARCHAR(255) DEFAULT NULL, type VARCHAR(255) NOT NULL, location VARCHAR(255) DEFAULT NULL, projector TINYINT(1) DEFAULT NULL, board TINYINT(1) DEFAULT NULL, capacity INT DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_749AEB2DD17F50A6 (uuid), INDEX IDX_749AEB2D727ACA70 (parent_id), INDEX IDX_749AEB2D9B9A36D0 (network_settings_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE `partition` (id INT AUTO_INCREMENT NOT NULL, client_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, disk_number INT DEFAULT NULL, partition_number INT DEFAULT NULL, partition_code VARCHAR(255) DEFAULT NULL, size INT NOT NULL, cache_content VARCHAR(255) DEFAULT NULL, filesystem VARCHAR(255) DEFAULT NULL, os_name VARCHAR(255) NOT NULL, memory_usage INT NOT NULL, UNIQUE INDEX UNIQ_9EB910E4D17F50A6 (uuid), INDEX IDX_9EB910E419EB6921 (client_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE refresh_tokens (id INT AUTO_INCREMENT NOT NULL, refresh_token VARCHAR(128) NOT NULL, username VARCHAR(255) NOT NULL, valid DATETIME NOT NULL, UNIQUE INDEX UNIQ_9BACE7E1C74F2195 (refresh_token), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, username VARCHAR(180) NOT NULL, roles JSON NOT NULL COMMENT \'(DC2Type:json)\', password VARCHAR(255) NOT NULL, enabled TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_8D93D649D17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_USERNAME (username), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_organizational_unit (user_id INT NOT NULL, organizational_unit_id INT NOT NULL, INDEX IDX_5E59845FA76ED395 (user_id), INDEX IDX_5E59845FFB84408A (organizational_unit_id), PRIMARY KEY(user_id, organizational_unit_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_group (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, permissions JSON NOT NULL COMMENT \'(DC2Type:json)\', name VARCHAR(255) NOT NULL, enabled TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_8F02BF9DD17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_group_user (user_group_id INT NOT NULL, user_id INT NOT NULL, INDEX IDX_3AE4BD51ED93D47 (user_group_id), INDEX IDX_3AE4BD5A76ED395 (user_id), PRIMARY KEY(user_group_id, user_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455FB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id)');
$this->addSql('ALTER TABLE hardware_profile ADD CONSTRAINT FK_2D9A2460FB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id)');
$this->addSql('ALTER TABLE hardware_profile_hardware ADD CONSTRAINT FK_18C7E12CFA495C1 FOREIGN KEY (hardware_profile_id) REFERENCES hardware_profile (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE hardware_profile_hardware ADD CONSTRAINT FK_18C7E12C9CC762B FOREIGN KEY (hardware_id) REFERENCES hardware (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id)');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54CFA495C1 FOREIGN KEY (hardware_profile_id) REFERENCES hardware_profile (id)');
$this->addSql('ALTER TABLE organizational_unit ADD CONSTRAINT FK_749AEB2D727ACA70 FOREIGN KEY (parent_id) REFERENCES organizational_unit (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE organizational_unit ADD CONSTRAINT FK_749AEB2D9B9A36D0 FOREIGN KEY (network_settings_id) REFERENCES network_settings (id)');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E419EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE user_organizational_unit ADD CONSTRAINT FK_5E59845FA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_organizational_unit ADD CONSTRAINT FK_5E59845FFB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_group_user ADD CONSTRAINT FK_3AE4BD51ED93D47 FOREIGN KEY (user_group_id) REFERENCES user_group (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_group_user ADD CONSTRAINT FK_3AE4BD5A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455FB84408A');
$this->addSql('ALTER TABLE hardware_profile DROP FOREIGN KEY FK_2D9A2460FB84408A');
$this->addSql('ALTER TABLE hardware_profile_hardware DROP FOREIGN KEY FK_18C7E12CFA495C1');
$this->addSql('ALTER TABLE hardware_profile_hardware DROP FOREIGN KEY FK_18C7E12C9CC762B');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54CCD7E912');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54CFA495C1');
$this->addSql('ALTER TABLE organizational_unit DROP FOREIGN KEY FK_749AEB2D727ACA70');
$this->addSql('ALTER TABLE organizational_unit DROP FOREIGN KEY FK_749AEB2D9B9A36D0');
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E419EB6921');
$this->addSql('ALTER TABLE user_organizational_unit DROP FOREIGN KEY FK_5E59845FA76ED395');
$this->addSql('ALTER TABLE user_organizational_unit DROP FOREIGN KEY FK_5E59845FFB84408A');
$this->addSql('ALTER TABLE user_group_user DROP FOREIGN KEY FK_3AE4BD51ED93D47');
$this->addSql('ALTER TABLE user_group_user DROP FOREIGN KEY FK_3AE4BD5A76ED395');
$this->addSql('DROP TABLE client');
$this->addSql('DROP TABLE hardware');
$this->addSql('DROP TABLE hardware_profile');
$this->addSql('DROP TABLE hardware_profile_hardware');
$this->addSql('DROP TABLE menu');
$this->addSql('DROP TABLE network_settings');
$this->addSql('DROP TABLE organizational_unit');
$this->addSql('DROP TABLE `partition`');
$this->addSql('DROP TABLE refresh_tokens');
$this->addSql('DROP TABLE user');
$this->addSql('DROP TABLE user_organizational_unit');
$this->addSql('DROP TABLE user_group');
$this->addSql('DROP TABLE user_group_user');
}
}

View File

@ -1,39 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240618062825 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client ADD menu_id INT DEFAULT NULL, ADD hardware_profile_id INT DEFAULT NULL');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id)');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455CFA495C1 FOREIGN KEY (hardware_profile_id) REFERENCES hardware_profile (id)');
$this->addSql('CREATE INDEX IDX_C7440455CCD7E912 ON client (menu_id)');
$this->addSql('CREATE INDEX IDX_C7440455CFA495C1 ON client (hardware_profile_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455CCD7E912');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455CFA495C1');
$this->addSql('DROP INDEX IDX_C7440455CCD7E912 ON client');
$this->addSql('DROP INDEX IDX_C7440455CFA495C1 ON client');
$this->addSql('ALTER TABLE client DROP menu_id, DROP hardware_profile_id');
}
}

View File

@ -1,41 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240618083013 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE hardware_type (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_2AA5A113D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE operative_system (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_E9C44095D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE operative_system_type (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_4A13A156D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE hardware ADD type_id INT DEFAULT NULL, DROP type');
$this->addSql('ALTER TABLE hardware ADD CONSTRAINT FK_FE99E9E0C54C8C93 FOREIGN KEY (type_id) REFERENCES hardware_type (id)');
$this->addSql('CREATE INDEX IDX_FE99E9E0C54C8C93 ON hardware (type_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE hardware DROP FOREIGN KEY FK_FE99E9E0C54C8C93');
$this->addSql('DROP TABLE hardware_type');
$this->addSql('DROP TABLE operative_system');
$this->addSql('DROP TABLE operative_system_type');
$this->addSql('DROP INDEX IDX_FE99E9E0C54C8C93 ON hardware');
$this->addSql('ALTER TABLE hardware ADD type VARCHAR(255) DEFAULT NULL, DROP type_id');
}
}

View File

@ -1,35 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240619104206 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE `partition` ADD operative_system_id INT DEFAULT NULL, DROP os_name');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E4F1E9F66E FOREIGN KEY (operative_system_id) REFERENCES operative_system (id)');
$this->addSql('CREATE INDEX IDX_9EB910E4F1E9F66E ON `partition` (operative_system_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E4F1E9F66E');
$this->addSql('DROP INDEX IDX_9EB910E4F1E9F66E ON `partition`');
$this->addSql('ALTER TABLE `partition` ADD os_name VARCHAR(255) NOT NULL, DROP operative_system_id');
}
}

View File

@ -1,33 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240620100039 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E419EB6921');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E419EB6921 FOREIGN KEY (client_id) REFERENCES client (id) ON DELETE CASCADE');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E419EB6921');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E419EB6921 FOREIGN KEY (client_id) REFERENCES client (id) ON DELETE SET NULL');
}
}

View File

@ -1,41 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240702132742 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE software (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_77D068CFD17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE software_profile (id INT AUTO_INCREMENT NOT NULL, organizational_unit_id INT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_B70C3C9BD17F50A6 (uuid), INDEX IDX_B70C3C9BFB84408A (organizational_unit_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE software_profile_software (software_profile_id INT NOT NULL, software_id INT NOT NULL, INDEX IDX_3DDFEC7ED42A742 (software_profile_id), INDEX IDX_3DDFEC7D7452741 (software_id), PRIMARY KEY(software_profile_id, software_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE software_profile ADD CONSTRAINT FK_B70C3C9BFB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id)');
$this->addSql('ALTER TABLE software_profile_software ADD CONSTRAINT FK_3DDFEC7ED42A742 FOREIGN KEY (software_profile_id) REFERENCES software_profile (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE software_profile_software ADD CONSTRAINT FK_3DDFEC7D7452741 FOREIGN KEY (software_id) REFERENCES software (id) ON DELETE CASCADE');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE software_profile DROP FOREIGN KEY FK_B70C3C9BFB84408A');
$this->addSql('ALTER TABLE software_profile_software DROP FOREIGN KEY FK_3DDFEC7ED42A742');
$this->addSql('ALTER TABLE software_profile_software DROP FOREIGN KEY FK_3DDFEC7D7452741');
$this->addSql('DROP TABLE software');
$this->addSql('DROP TABLE software_profile');
$this->addSql('DROP TABLE software_profile_software');
}
}

View File

@ -1,35 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240703090301 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE image (id INT AUTO_INCREMENT NOT NULL, client_id INT NOT NULL, software_profile_id INT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, path VARCHAR(255) NOT NULL, type VARCHAR(255) NOT NULL, revision VARCHAR(255) DEFAULT NULL, info VARCHAR(255) DEFAULT NULL, size INT NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_C53D045FD17F50A6 (uuid), INDEX IDX_C53D045F19EB6921 (client_id), INDEX IDX_C53D045FED42A742 (software_profile_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045F19EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045FED42A742 FOREIGN KEY (software_profile_id) REFERENCES software_profile (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045F19EB6921');
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045FED42A742');
$this->addSql('DROP TABLE image');
}
}

View File

@ -1,43 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240715084147 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE user_user_group (user_id INT NOT NULL, user_group_id INT NOT NULL, INDEX IDX_28657971A76ED395 (user_id), INDEX IDX_286579711ED93D47 (user_group_id), PRIMARY KEY(user_id, user_group_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE user_user_group ADD CONSTRAINT FK_28657971A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_user_group ADD CONSTRAINT FK_286579711ED93D47 FOREIGN KEY (user_group_id) REFERENCES user_group (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_group_user DROP FOREIGN KEY FK_3AE4BD51ED93D47');
$this->addSql('ALTER TABLE user_group_user DROP FOREIGN KEY FK_3AE4BD5A76ED395');
$this->addSql('DROP TABLE user_group_user');
$this->addSql('ALTER TABLE hardware_profile CHANGE organizational_unit_id organizational_unit_id INT NOT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE user_group_user (user_group_id INT NOT NULL, user_id INT NOT NULL, INDEX IDX_3AE4BD5A76ED395 (user_id), INDEX IDX_3AE4BD51ED93D47 (user_group_id), PRIMARY KEY(user_group_id, user_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
$this->addSql('ALTER TABLE user_group_user ADD CONSTRAINT FK_3AE4BD51ED93D47 FOREIGN KEY (user_group_id) REFERENCES user_group (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_group_user ADD CONSTRAINT FK_3AE4BD5A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_user_group DROP FOREIGN KEY FK_28657971A76ED395');
$this->addSql('ALTER TABLE user_user_group DROP FOREIGN KEY FK_286579711ED93D47');
$this->addSql('DROP TABLE user_user_group');
$this->addSql('ALTER TABLE hardware_profile CHANGE organizational_unit_id organizational_unit_id INT DEFAULT NULL');
}
}

View File

@ -0,0 +1,189 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20241120160808 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE client (id INT AUTO_INCREMENT NOT NULL, organizational_unit_id INT DEFAULT NULL, menu_id INT DEFAULT NULL, hardware_profile_id INT DEFAULT NULL, template_id INT DEFAULT NULL, repository_id INT DEFAULT NULL, subnet_id INT DEFAULT NULL, og_live_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, serial_number VARCHAR(255) DEFAULT NULL, netiface VARCHAR(255) DEFAULT NULL, net_driver VARCHAR(255) DEFAULT NULL, mac VARCHAR(255) DEFAULT NULL, ip VARCHAR(255) DEFAULT NULL, status VARCHAR(255) DEFAULT NULL, validation TINYINT(1) DEFAULT NULL, position JSON DEFAULT NULL COMMENT \'(DC2Type:json)\', maintenance TINYINT(1) NOT NULL, agent_job_id VARCHAR(255) DEFAULT NULL, pxe_sync TINYINT(1) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_C7440455D17F50A6 (uuid), INDEX IDX_C7440455FB84408A (organizational_unit_id), INDEX IDX_C7440455CCD7E912 (menu_id), INDEX IDX_C7440455CFA495C1 (hardware_profile_id), INDEX IDX_C74404555DA0FB8 (template_id), INDEX IDX_C744045550C9D4F7 (repository_id), INDEX IDX_C7440455C9CF9478 (subnet_id), INDEX IDX_C7440455F7E54CF3 (og_live_id), UNIQUE INDEX UNIQ_IDENTIFIER_IP (ip), UNIQUE INDEX UNIQ_IDENTIFIER_MAC (mac), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, script LONGTEXT NOT NULL, comments VARCHAR(255) DEFAULT NULL, read_only TINYINT(1) NOT NULL, name VARCHAR(255) NOT NULL, enabled TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_8ECAEAD4D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command_group (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, enabled TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_FE6811F6D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command_group_command (command_group_id INT NOT NULL, command_id INT NOT NULL, INDEX IDX_118CE215C7B800D6 (command_group_id), INDEX IDX_118CE21533E1689A (command_id), PRIMARY KEY(command_group_id, command_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command_task (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, datetime DATETIME NOT NULL, notes VARCHAR(255) DEFAULT NULL, status VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_F3D475A8D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command_task_command (command_task_id INT NOT NULL, command_id INT NOT NULL, INDEX IDX_BB417CA862DC5265 (command_task_id), INDEX IDX_BB417CA833E1689A (command_id), PRIMARY KEY(command_task_id, command_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command_task_command_group (command_task_id INT NOT NULL, command_group_id INT NOT NULL, INDEX IDX_C43618BD62DC5265 (command_task_id), INDEX IDX_C43618BDC7B800D6 (command_group_id), PRIMARY KEY(command_task_id, command_group_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE command_task_client (command_task_id INT NOT NULL, client_id INT NOT NULL, INDEX IDX_F97A827D62DC5265 (command_task_id), INDEX IDX_F97A827D19EB6921 (client_id), PRIMARY KEY(command_task_id, client_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware (id INT AUTO_INCREMENT NOT NULL, type_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_FE99E9E0D17F50A6 (uuid), INDEX IDX_FE99E9E0C54C8C93 (type_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware_profile (id INT AUTO_INCREMENT NOT NULL, organizational_unit_id INT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_2D9A2460D17F50A6 (uuid), INDEX IDX_2D9A2460FB84408A (organizational_unit_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware_profile_hardware (hardware_profile_id INT NOT NULL, hardware_id INT NOT NULL, INDEX IDX_18C7E12CFA495C1 (hardware_profile_id), INDEX IDX_18C7E12C9CC762B (hardware_id), PRIMARY KEY(hardware_profile_id, hardware_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE hardware_type (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_2AA5A113D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE image (id INT AUTO_INCREMENT NOT NULL, software_profile_id INT DEFAULT NULL, repository_id INT NOT NULL, parent_id INT DEFAULT NULL, client_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, path VARCHAR(255) DEFAULT NULL, type VARCHAR(255) DEFAULT NULL, revision VARCHAR(255) DEFAULT NULL, info VARCHAR(255) DEFAULT NULL, size INT DEFAULT NULL, remote_pc TINYINT(1) NOT NULL, partition_info VARCHAR(255) DEFAULT NULL, created TINYINT(1) DEFAULT NULL, image_fullsum VARCHAR(255) DEFAULT NULL, status VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_C53D045FD17F50A6 (uuid), INDEX IDX_C53D045FED42A742 (software_profile_id), INDEX IDX_C53D045F50C9D4F7 (repository_id), INDEX IDX_C53D045F727ACA70 (parent_id), INDEX IDX_C53D045F19EB6921 (client_id), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE image_repository (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, ip VARCHAR(255) NOT NULL, comments VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_302040FBD17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE menu (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, title VARCHAR(255) NOT NULL, resolution VARCHAR(255) NOT NULL, comments VARCHAR(255) DEFAULT NULL, public_url VARCHAR(255) DEFAULT NULL, private_url VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_7D053A93D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE network_settings (id INT AUTO_INCREMENT NOT NULL, menu_id INT DEFAULT NULL, hardware_profile_id INT DEFAULT NULL, repository_id INT DEFAULT NULL, og_live_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, next_server VARCHAR(255) DEFAULT NULL, boot_file_name VARCHAR(255) DEFAULT NULL, proxy VARCHAR(255) DEFAULT NULL, dns VARCHAR(255) DEFAULT NULL, netmask VARCHAR(255) DEFAULT NULL, router VARCHAR(255) DEFAULT NULL, ntp VARCHAR(255) DEFAULT NULL, p2p_time INT DEFAULT NULL, p2p_mode VARCHAR(255) DEFAULT NULL, mcast_ip VARCHAR(255) DEFAULT NULL, mcast_speed INT DEFAULT NULL, mcast_mode VARCHAR(255) DEFAULT NULL, mcast_port INT DEFAULT NULL, validation TINYINT(1) DEFAULT NULL, og_log VARCHAR(255) DEFAULT NULL, og_share VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_48869B54D17F50A6 (uuid), INDEX IDX_48869B54CCD7E912 (menu_id), INDEX IDX_48869B54CFA495C1 (hardware_profile_id), INDEX IDX_48869B5450C9D4F7 (repository_id), INDEX IDX_48869B54F7E54CF3 (og_live_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE og_live (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, download_url VARCHAR(255) DEFAULT NULL, checksum VARCHAR(255) DEFAULT NULL, distribution VARCHAR(255) DEFAULT NULL, kernel VARCHAR(255) DEFAULT NULL, architecture VARCHAR(255) DEFAULT NULL, revision VARCHAR(255) DEFAULT NULL, directory VARCHAR(255) DEFAULT NULL, filename VARCHAR(255) DEFAULT NULL, installed TINYINT(1) DEFAULT NULL, is_default TINYINT(1) DEFAULT NULL, status VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, synchronized TINYINT(1) DEFAULT NULL, UNIQUE INDEX UNIQ_3D6B7739D17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE operative_system (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_E9C44095D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE operative_system_type (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_4A13A156D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE organizational_unit (id INT AUTO_INCREMENT NOT NULL, parent_id INT DEFAULT NULL, network_settings_id INT DEFAULT NULL, subnet_id INT DEFAULT NULL, remote_calendar_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, path VARCHAR(255) DEFAULT NULL, level INT DEFAULT NULL, slug VARCHAR(255) DEFAULT NULL, type VARCHAR(255) NOT NULL, location VARCHAR(255) DEFAULT NULL, projector TINYINT(1) DEFAULT NULL, board TINYINT(1) DEFAULT NULL, capacity INT DEFAULT NULL, remote_pc TINYINT(1) NOT NULL, reserved TINYINT(1) NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_749AEB2DD17F50A6 (uuid), INDEX IDX_749AEB2D727ACA70 (parent_id), INDEX IDX_749AEB2D9B9A36D0 (network_settings_id), INDEX IDX_749AEB2DC9CF9478 (subnet_id), INDEX IDX_749AEB2DC56641EE (remote_calendar_id), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name, parent_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE `partition` (id INT AUTO_INCREMENT NOT NULL, client_id INT DEFAULT NULL, operative_system_id INT DEFAULT NULL, image_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, disk_number INT DEFAULT NULL, partition_number INT DEFAULT NULL, partition_code VARCHAR(255) DEFAULT NULL, size INT NOT NULL, cache_content VARCHAR(255) DEFAULT NULL, filesystem VARCHAR(255) DEFAULT NULL, memory_usage INT NOT NULL, UNIQUE INDEX UNIQ_9EB910E4D17F50A6 (uuid), INDEX IDX_9EB910E419EB6921 (client_id), INDEX IDX_9EB910E4F1E9F66E (operative_system_id), INDEX IDX_9EB910E43DA5256D (image_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE pxe_template (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, template_content LONGTEXT NOT NULL, name VARCHAR(255) NOT NULL, synchronized TINYINT(1) DEFAULT NULL, UNIQUE INDEX UNIQ_73197554D17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE refresh_tokens (id INT AUTO_INCREMENT NOT NULL, refresh_token VARCHAR(128) NOT NULL, username VARCHAR(255) NOT NULL, valid DATETIME NOT NULL, UNIQUE INDEX UNIQ_9BACE7E1C74F2195 (refresh_token), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE remote_calendar (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_BD3BDE0AD17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE remote_calendar_rule (id INT AUTO_INCREMENT NOT NULL, remote_calendar_id INT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, busy_weekdays JSON DEFAULT NULL COMMENT \'(DC2Type:json)\', busy_from_hour TIME DEFAULT NULL, busy_to_hour TIME DEFAULT NULL, is_remote_available TINYINT(1) NOT NULL, available_from_date DATE DEFAULT NULL, available_to_date DATE DEFAULT NULL, available_reason VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_EE93D058D17F50A6 (uuid), INDEX IDX_EE93D058C56641EE (remote_calendar_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE software (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, type VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_77D068CFD17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE software_profile (id INT AUTO_INCREMENT NOT NULL, organizational_unit_id INT NOT NULL, operative_system_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, comments VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_B70C3C9BD17F50A6 (uuid), INDEX IDX_B70C3C9BFB84408A (organizational_unit_id), INDEX IDX_B70C3C9BF1E9F66E (operative_system_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE software_profile_software (software_profile_id INT NOT NULL, software_id INT NOT NULL, INDEX IDX_3DDFEC7ED42A742 (software_profile_id), INDEX IDX_3DDFEC7D7452741 (software_id), PRIMARY KEY(software_profile_id, software_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE subnet (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, netmask VARCHAR(255) NOT NULL, ip_address VARCHAR(255) NOT NULL, next_server VARCHAR(255) NOT NULL, boot_file_name VARCHAR(255) NOT NULL, server_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, synchronized TINYINT(1) DEFAULT NULL, UNIQUE INDEX UNIQ_91C24216D17F50A6 (uuid), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE trace (id INT AUTO_INCREMENT NOT NULL, client_id INT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, command VARCHAR(255) DEFAULT NULL, status VARCHAR(255) NOT NULL, output VARCHAR(255) DEFAULT NULL, executed_at DATETIME NOT NULL, finished_at DATETIME DEFAULT NULL, job_id VARCHAR(255) DEFAULT NULL, input JSON DEFAULT NULL COMMENT \'(DC2Type:json)\', UNIQUE INDEX UNIQ_315BD5A1D17F50A6 (uuid), INDEX IDX_315BD5A119EB6921 (client_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, username VARCHAR(180) NOT NULL, roles JSON NOT NULL COMMENT \'(DC2Type:json)\', password VARCHAR(255) NOT NULL, enabled TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_8D93D649D17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_USERNAME (username), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_user_group (user_id INT NOT NULL, user_group_id INT NOT NULL, INDEX IDX_28657971A76ED395 (user_id), INDEX IDX_286579711ED93D47 (user_group_id), PRIMARY KEY(user_id, user_group_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_organizational_unit (user_id INT NOT NULL, organizational_unit_id INT NOT NULL, INDEX IDX_5E59845FA76ED395 (user_id), INDEX IDX_5E59845FFB84408A (organizational_unit_id), PRIMARY KEY(user_id, organizational_unit_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_group (id INT AUTO_INCREMENT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, permissions JSON NOT NULL COMMENT \'(DC2Type:json)\', name VARCHAR(255) NOT NULL, enabled TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_8F02BF9DD17F50A6 (uuid), UNIQUE INDEX UNIQ_IDENTIFIER_NAME (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE view (id INT AUTO_INCREMENT NOT NULL, user_id INT DEFAULT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, favourite TINYINT(1) NOT NULL, filters JSON DEFAULT NULL COMMENT \'(DC2Type:json)\', name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_FEFDAB8ED17F50A6 (uuid), INDEX IDX_FEFDAB8EA76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455FB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id)');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455CFA495C1 FOREIGN KEY (hardware_profile_id) REFERENCES hardware_profile (id)');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C74404555DA0FB8 FOREIGN KEY (template_id) REFERENCES pxe_template (id)');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C744045550C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455C9CF9478 FOREIGN KEY (subnet_id) REFERENCES subnet (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455F7E54CF3 FOREIGN KEY (og_live_id) REFERENCES og_live (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE command_group_command ADD CONSTRAINT FK_118CE215C7B800D6 FOREIGN KEY (command_group_id) REFERENCES command_group (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_group_command ADD CONSTRAINT FK_118CE21533E1689A FOREIGN KEY (command_id) REFERENCES command (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_task_command ADD CONSTRAINT FK_BB417CA862DC5265 FOREIGN KEY (command_task_id) REFERENCES command_task (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_task_command ADD CONSTRAINT FK_BB417CA833E1689A FOREIGN KEY (command_id) REFERENCES command (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_task_command_group ADD CONSTRAINT FK_C43618BD62DC5265 FOREIGN KEY (command_task_id) REFERENCES command_task (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_task_command_group ADD CONSTRAINT FK_C43618BDC7B800D6 FOREIGN KEY (command_group_id) REFERENCES command_group (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_task_client ADD CONSTRAINT FK_F97A827D62DC5265 FOREIGN KEY (command_task_id) REFERENCES command_task (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE command_task_client ADD CONSTRAINT FK_F97A827D19EB6921 FOREIGN KEY (client_id) REFERENCES client (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE hardware ADD CONSTRAINT FK_FE99E9E0C54C8C93 FOREIGN KEY (type_id) REFERENCES hardware_type (id)');
$this->addSql('ALTER TABLE hardware_profile ADD CONSTRAINT FK_2D9A2460FB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id)');
$this->addSql('ALTER TABLE hardware_profile_hardware ADD CONSTRAINT FK_18C7E12CFA495C1 FOREIGN KEY (hardware_profile_id) REFERENCES hardware_profile (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE hardware_profile_hardware ADD CONSTRAINT FK_18C7E12C9CC762B FOREIGN KEY (hardware_id) REFERENCES hardware (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045FED42A742 FOREIGN KEY (software_profile_id) REFERENCES software_profile (id)');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045F50C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045F727ACA70 FOREIGN KEY (parent_id) REFERENCES image (id)');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045F19EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id)');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54CFA495C1 FOREIGN KEY (hardware_profile_id) REFERENCES hardware_profile (id)');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B5450C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54F7E54CF3 FOREIGN KEY (og_live_id) REFERENCES og_live (id)');
$this->addSql('ALTER TABLE organizational_unit ADD CONSTRAINT FK_749AEB2D727ACA70 FOREIGN KEY (parent_id) REFERENCES organizational_unit (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE organizational_unit ADD CONSTRAINT FK_749AEB2D9B9A36D0 FOREIGN KEY (network_settings_id) REFERENCES network_settings (id)');
$this->addSql('ALTER TABLE organizational_unit ADD CONSTRAINT FK_749AEB2DC9CF9478 FOREIGN KEY (subnet_id) REFERENCES subnet (id)');
$this->addSql('ALTER TABLE organizational_unit ADD CONSTRAINT FK_749AEB2DC56641EE FOREIGN KEY (remote_calendar_id) REFERENCES remote_calendar (id)');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E419EB6921 FOREIGN KEY (client_id) REFERENCES client (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E4F1E9F66E FOREIGN KEY (operative_system_id) REFERENCES operative_system (id)');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E43DA5256D FOREIGN KEY (image_id) REFERENCES image (id)');
$this->addSql('ALTER TABLE remote_calendar_rule ADD CONSTRAINT FK_EE93D058C56641EE FOREIGN KEY (remote_calendar_id) REFERENCES remote_calendar (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE software_profile ADD CONSTRAINT FK_B70C3C9BFB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id)');
$this->addSql('ALTER TABLE software_profile ADD CONSTRAINT FK_B70C3C9BF1E9F66E FOREIGN KEY (operative_system_id) REFERENCES operative_system (id)');
$this->addSql('ALTER TABLE software_profile_software ADD CONSTRAINT FK_3DDFEC7ED42A742 FOREIGN KEY (software_profile_id) REFERENCES software_profile (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE software_profile_software ADD CONSTRAINT FK_3DDFEC7D7452741 FOREIGN KEY (software_id) REFERENCES software (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE trace ADD CONSTRAINT FK_315BD5A119EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE user_user_group ADD CONSTRAINT FK_28657971A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_user_group ADD CONSTRAINT FK_286579711ED93D47 FOREIGN KEY (user_group_id) REFERENCES user_group (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_organizational_unit ADD CONSTRAINT FK_5E59845FA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE user_organizational_unit ADD CONSTRAINT FK_5E59845FFB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE view ADD CONSTRAINT FK_FEFDAB8EA76ED395 FOREIGN KEY (user_id) REFERENCES user (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455FB84408A');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455CCD7E912');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455CFA495C1');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C74404555DA0FB8');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C744045550C9D4F7');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455C9CF9478');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455F7E54CF3');
$this->addSql('ALTER TABLE command_group_command DROP FOREIGN KEY FK_118CE215C7B800D6');
$this->addSql('ALTER TABLE command_group_command DROP FOREIGN KEY FK_118CE21533E1689A');
$this->addSql('ALTER TABLE command_task_command DROP FOREIGN KEY FK_BB417CA862DC5265');
$this->addSql('ALTER TABLE command_task_command DROP FOREIGN KEY FK_BB417CA833E1689A');
$this->addSql('ALTER TABLE command_task_command_group DROP FOREIGN KEY FK_C43618BD62DC5265');
$this->addSql('ALTER TABLE command_task_command_group DROP FOREIGN KEY FK_C43618BDC7B800D6');
$this->addSql('ALTER TABLE command_task_client DROP FOREIGN KEY FK_F97A827D62DC5265');
$this->addSql('ALTER TABLE command_task_client DROP FOREIGN KEY FK_F97A827D19EB6921');
$this->addSql('ALTER TABLE hardware DROP FOREIGN KEY FK_FE99E9E0C54C8C93');
$this->addSql('ALTER TABLE hardware_profile DROP FOREIGN KEY FK_2D9A2460FB84408A');
$this->addSql('ALTER TABLE hardware_profile_hardware DROP FOREIGN KEY FK_18C7E12CFA495C1');
$this->addSql('ALTER TABLE hardware_profile_hardware DROP FOREIGN KEY FK_18C7E12C9CC762B');
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045FED42A742');
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045F50C9D4F7');
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045F727ACA70');
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045F19EB6921');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54CCD7E912');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54CFA495C1');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B5450C9D4F7');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54F7E54CF3');
$this->addSql('ALTER TABLE organizational_unit DROP FOREIGN KEY FK_749AEB2D727ACA70');
$this->addSql('ALTER TABLE organizational_unit DROP FOREIGN KEY FK_749AEB2D9B9A36D0');
$this->addSql('ALTER TABLE organizational_unit DROP FOREIGN KEY FK_749AEB2DC9CF9478');
$this->addSql('ALTER TABLE organizational_unit DROP FOREIGN KEY FK_749AEB2DC56641EE');
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E419EB6921');
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E4F1E9F66E');
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E43DA5256D');
$this->addSql('ALTER TABLE remote_calendar_rule DROP FOREIGN KEY FK_EE93D058C56641EE');
$this->addSql('ALTER TABLE software_profile DROP FOREIGN KEY FK_B70C3C9BFB84408A');
$this->addSql('ALTER TABLE software_profile DROP FOREIGN KEY FK_B70C3C9BF1E9F66E');
$this->addSql('ALTER TABLE software_profile_software DROP FOREIGN KEY FK_3DDFEC7ED42A742');
$this->addSql('ALTER TABLE software_profile_software DROP FOREIGN KEY FK_3DDFEC7D7452741');
$this->addSql('ALTER TABLE trace DROP FOREIGN KEY FK_315BD5A119EB6921');
$this->addSql('ALTER TABLE user_user_group DROP FOREIGN KEY FK_28657971A76ED395');
$this->addSql('ALTER TABLE user_user_group DROP FOREIGN KEY FK_286579711ED93D47');
$this->addSql('ALTER TABLE user_organizational_unit DROP FOREIGN KEY FK_5E59845FA76ED395');
$this->addSql('ALTER TABLE user_organizational_unit DROP FOREIGN KEY FK_5E59845FFB84408A');
$this->addSql('ALTER TABLE view DROP FOREIGN KEY FK_FEFDAB8EA76ED395');
$this->addSql('DROP TABLE client');
$this->addSql('DROP TABLE command');
$this->addSql('DROP TABLE command_group');
$this->addSql('DROP TABLE command_group_command');
$this->addSql('DROP TABLE command_task');
$this->addSql('DROP TABLE command_task_command');
$this->addSql('DROP TABLE command_task_command_group');
$this->addSql('DROP TABLE command_task_client');
$this->addSql('DROP TABLE hardware');
$this->addSql('DROP TABLE hardware_profile');
$this->addSql('DROP TABLE hardware_profile_hardware');
$this->addSql('DROP TABLE hardware_type');
$this->addSql('DROP TABLE image');
$this->addSql('DROP TABLE image_repository');
$this->addSql('DROP TABLE menu');
$this->addSql('DROP TABLE network_settings');
$this->addSql('DROP TABLE og_live');
$this->addSql('DROP TABLE operative_system');
$this->addSql('DROP TABLE operative_system_type');
$this->addSql('DROP TABLE organizational_unit');
$this->addSql('DROP TABLE `partition`');
$this->addSql('DROP TABLE pxe_template');
$this->addSql('DROP TABLE refresh_tokens');
$this->addSql('DROP TABLE remote_calendar');
$this->addSql('DROP TABLE remote_calendar_rule');
$this->addSql('DROP TABLE software');
$this->addSql('DROP TABLE software_profile');
$this->addSql('DROP TABLE software_profile_software');
$this->addSql('DROP TABLE subnet');
$this->addSql('DROP TABLE trace');
$this->addSql('DROP TABLE user');
$this->addSql('DROP TABLE user_user_group');
$this->addSql('DROP TABLE user_organizational_unit');
$this->addSql('DROP TABLE user_group');
$this->addSql('DROP TABLE view');
}
}

View File

@ -0,0 +1,31 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20241121135118 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE subnet CHANGE next_server next_server VARCHAR(255) DEFAULT NULL, CHANGE boot_file_name boot_file_name VARCHAR(255) DEFAULT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE subnet CHANGE next_server next_server VARCHAR(255) NOT NULL, CHANGE boot_file_name boot_file_name VARCHAR(255) NOT NULL');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240619084701 extends AbstractMigration
final class Version20241205110301 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,12 +20,12 @@ final class Version20240619084701 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client ADD validation TINYINT(1) DEFAULT NULL');
$this->addSql('ALTER TABLE subnet ADD router VARCHAR(255) DEFAULT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP validation');
$this->addSql('ALTER TABLE subnet DROP router');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240621085144 extends AbstractMigration
final class Version20241211074943 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,14 +20,14 @@ final class Version20240621085144 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_NAME ON organizational_unit');
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_NAME ON organizational_unit (name, parent_id)');
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_NAME ON og_live');
$this->addSql('ALTER TABLE og_live DROP name');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_NAME ON organizational_unit');
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_NAME ON organizational_unit (name)');
$this->addSql('ALTER TABLE og_live ADD name VARCHAR(255) NOT NULL');
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_NAME ON og_live (name)');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240620095914 extends AbstractMigration
final class Version20241211075520 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,14 +20,14 @@ final class Version20240620095914 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E419EB6921');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E419EB6921 FOREIGN KEY (client_id) REFERENCES client (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54F7E54CF3');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54F7E54CF3 FOREIGN KEY (og_live_id) REFERENCES og_live (id) ON DELETE SET NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE `partition` DROP FOREIGN KEY FK_9EB910E419EB6921');
$this->addSql('ALTER TABLE `partition` ADD CONSTRAINT FK_9EB910E419EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE network_settings DROP FOREIGN KEY FK_48869B54F7E54CF3');
$this->addSql('ALTER TABLE network_settings ADD CONSTRAINT FK_48869B54F7E54CF3 FOREIGN KEY (og_live_id) REFERENCES og_live (id)');
}
}

View File

@ -0,0 +1,33 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20241211080733 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE og_live CHANGE filename filename VARCHAR(255) NOT NULL');
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_FILENAME ON og_live (filename)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_FILENAME ON og_live');
$this->addSql('ALTER TABLE og_live CHANGE filename filename VARCHAR(255) DEFAULT NULL');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240718064611 extends AbstractMigration
final class Version20241216080914 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,12 +20,12 @@ final class Version20240718064611 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client ADD position JSON DEFAULT NULL COMMENT \'(DC2Type:json)\'');
$this->addSql('ALTER TABLE menu DROP title');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP position');
$this->addSql('ALTER TABLE menu ADD title VARCHAR(255) NOT NULL');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240618113629 extends AbstractMigration
final class Version20250107121226 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,12 +20,12 @@ final class Version20240618113629 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_NAME ON organizational_unit (name)');
$this->addSql('ALTER TABLE menu ADD is_default TINYINT(1) NOT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_NAME ON organizational_unit');
$this->addSql('ALTER TABLE menu DROP is_default');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240701123613 extends AbstractMigration
final class Version20250107124654 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,14 +20,14 @@ final class Version20240701123613 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455FB84408A');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455FB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455CCD7E912');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id) ON DELETE SET NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455FB84408A');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455FB84408A FOREIGN KEY (organizational_unit_id) REFERENCES organizational_unit (id)');
$this->addSql('ALTER TABLE client DROP FOREIGN KEY FK_C7440455CCD7E912');
$this->addSql('ALTER TABLE client ADD CONSTRAINT FK_C7440455CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id)');
}
}

View File

@ -0,0 +1,31 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250203113932 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image ADD is_global TINYINT(1) NOT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image DROP is_global');
}
}

View File

@ -0,0 +1,41 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250206075246 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE image_image_repository (image_id INT NOT NULL, image_repository_id INT NOT NULL, INDEX IDX_B78513373DA5256D (image_id), INDEX IDX_B785133714C736FC (image_repository_id), PRIMARY KEY(image_id, image_repository_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B78513373DA5256D FOREIGN KEY (image_id) REFERENCES image (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133714C736FC FOREIGN KEY (image_repository_id) REFERENCES image_repository (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE image DROP FOREIGN KEY FK_C53D045F50C9D4F7');
$this->addSql('DROP INDEX IDX_C53D045F50C9D4F7 ON image');
$this->addSql('ALTER TABLE image DROP repository_id');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B78513373DA5256D');
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133714C736FC');
$this->addSql('DROP TABLE image_image_repository');
$this->addSql('ALTER TABLE image ADD repository_id INT NOT NULL');
$this->addSql('ALTER TABLE image ADD CONSTRAINT FK_C53D045F50C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
$this->addSql('CREATE INDEX IDX_C53D045F50C9D4F7 ON image (repository_id)');
}
}

View File

@ -0,0 +1,35 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250211073126 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133714C736FC');
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B78513373DA5256D');
$this->addSql('DROP TABLE image_image_repository');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE image_image_repository (image_id INT NOT NULL, image_repository_id INT NOT NULL, INDEX IDX_B78513373DA5256D (image_id), INDEX IDX_B785133714C736FC (image_repository_id), PRIMARY KEY(image_id, image_repository_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133714C736FC FOREIGN KEY (image_repository_id) REFERENCES image_repository (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B78513373DA5256D FOREIGN KEY (image_id) REFERENCES image (id) ON DELETE CASCADE');
}
}

View File

@ -0,0 +1,35 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250211073801 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE image_image_repository (id INT AUTO_INCREMENT NOT NULL, image_id INT DEFAULT NULL, repository_id INT NOT NULL, uuid CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', migration_id VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, created_by VARCHAR(255) DEFAULT NULL, updated_by VARCHAR(255) DEFAULT NULL, status VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_B7851337D17F50A6 (uuid), INDEX IDX_B78513373DA5256D (image_id), INDEX IDX_B785133750C9D4F7 (repository_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B78513373DA5256D FOREIGN KEY (image_id) REFERENCES image (id)');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133750C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B78513373DA5256D');
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133750C9D4F7');
$this->addSql('DROP TABLE image_image_repository');
}
}

View File

@ -0,0 +1,33 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250211081319 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133750C9D4F7');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133750C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_image_repository (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133750C9D4F7');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133750C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
}
}

View File

@ -0,0 +1,33 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250211081406 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133750C9D4F7');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133750C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_repository (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE image_image_repository DROP FOREIGN KEY FK_B785133750C9D4F7');
$this->addSql('ALTER TABLE image_image_repository ADD CONSTRAINT FK_B785133750C9D4F7 FOREIGN KEY (repository_id) REFERENCES image_image_repository (id)');
}
}

View File

@ -10,7 +10,7 @@ use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240619083230 extends AbstractMigration
final class Version20250211103630 extends AbstractMigration
{
public function getDescription(): string
{
@ -20,14 +20,12 @@ final class Version20240619083230 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_IP ON client (ip)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_MAC ON client (mac)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_IMAGE_REPOSITORY ON image_image_repository (image_id, repository_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_IP ON client');
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_MAC ON client');
$this->addSql('DROP INDEX UNIQ_IDENTIFIER_IMAGE_REPOSITORY ON image_image_repository');
}
}

Some files were not shown because too many files have changed in this diff Show More