From 9545d760713c0f22bdcfbf210ceae1fb42305898 Mon Sep 17 00:00:00 2001 From: simonzhangsz Date: Sat, 26 Aug 2023 11:25:40 +0800 Subject: [PATCH] new --- bin/binWriter | Bin 0 -> 71536 bytes build/nginx/omc.conf | 47 +++++ build/omc/.ssh/id_rsa | 38 ++++ build/omc/.ssh/id_rsa.pub | 1 + build/omc/.ssh/private_key.pem | 38 ++++ build/omc/etc/certs/ca_cert.pem | 18 ++ build/omc/etc/certs/private_key.pem | 27 +++ build/omc/etc/certs/public_key.pem | 8 + build/omc/etc/cm/cm-amf.yaml | 49 +++++ build/omc/etc/cm/cm-smf.yaml | 48 +++++ build/omc/etc/cm/cm-udm.yaml | 39 ++++ build/omc/etc/cm/cm-upf.yaml | 141 +++++++++++++++ build/omc/etc/default/4a_agent.yaml | 14 ++ build/omc/etc/default/crontask.yaml | 44 +++++ build/omc/etc/default/nbi_agent.json | 91 ++++++++++ build/omc/etc/default/nbi_alarm.json | 40 ++++ build/omc/etc/default/restconf.yaml | 111 ++++++++++++ build/omc/etc/default/sshsvc.yaml | 50 +++++ build/omc/etc/default/tasks-1s.yaml | 129 +++++++++++++ build/omc/etc/default/tasks.yaml | 171 ++++++++++++++++++ build/omc/etc/default/testconfig.yaml | 19 ++ build/omc/etc/schema/cm-schema.xsd | 76 ++++++++ build/omc/etc/schema/pm-schema.xsd | 80 ++++++++ build/systemd/4a_agent.service | 16 ++ build/systemd/crontask.service | 16 ++ build/systemd/nbi_agent.service | 16 ++ build/systemd/nbi_alarm.service | 16 ++ build/systemd/restagent.service | 16 ++ build/systemd/sshsvc.service | 16 ++ debbuild/DEBIAN/control | 7 + debbuild/DEBIAN/postinst | 17 ++ debbuild/DEBIAN/postrm | 9 + .../local/omc/etc/omc/default/restconf.yaml | 16 ++ rpmbuild/SPECS/omc.spec | 122 +++++++++++++ 34 files changed, 1546 insertions(+) create mode 100644 bin/binWriter create mode 100644 build/nginx/omc.conf create mode 100644 build/omc/.ssh/id_rsa create mode 100644 build/omc/.ssh/id_rsa.pub create mode 100644 build/omc/.ssh/private_key.pem create mode 100644 build/omc/etc/certs/ca_cert.pem create mode 100644 build/omc/etc/certs/private_key.pem create mode 100644 build/omc/etc/certs/public_key.pem create mode 100644 build/omc/etc/cm/cm-amf.yaml create mode 100644 build/omc/etc/cm/cm-smf.yaml create mode 100644 build/omc/etc/cm/cm-udm.yaml create mode 100644 build/omc/etc/cm/cm-upf.yaml create mode 100644 build/omc/etc/default/4a_agent.yaml create mode 100644 build/omc/etc/default/crontask.yaml create mode 100644 build/omc/etc/default/nbi_agent.json create mode 100644 build/omc/etc/default/nbi_alarm.json create mode 100644 build/omc/etc/default/restconf.yaml create mode 100644 build/omc/etc/default/sshsvc.yaml create mode 100644 build/omc/etc/default/tasks-1s.yaml create mode 100644 build/omc/etc/default/tasks.yaml create mode 100644 build/omc/etc/default/testconfig.yaml create mode 100644 build/omc/etc/schema/cm-schema.xsd create mode 100644 build/omc/etc/schema/pm-schema.xsd create mode 100644 build/systemd/4a_agent.service create mode 100644 build/systemd/crontask.service create mode 100644 build/systemd/nbi_agent.service create mode 100644 build/systemd/nbi_alarm.service create mode 100644 build/systemd/restagent.service create mode 100644 build/systemd/sshsvc.service create mode 100644 debbuild/DEBIAN/control create mode 100644 debbuild/DEBIAN/postinst create mode 100644 debbuild/DEBIAN/postrm create mode 100644 debbuild/usr/local/omc/etc/omc/default/restconf.yaml create mode 100644 rpmbuild/SPECS/omc.spec diff --git a/bin/binWriter b/bin/binWriter new file mode 100644 index 0000000000000000000000000000000000000000..4c0e7bec11f3df9305e810c68d51498142d4d9a0 GIT binary patch literal 71536 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,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='historyDuration')+day)+and+alarm_status='0' + interval: 1 + unit: Days + at: 00:10:00 + do: TaskDeleteExpiredRecord + - name: clear deleted custom pm kpi + uri: /api/rest/databaseManagement/v1/omc_db/pm_custom_title + params: WHERE=now()+>+ADDDATE(update_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='keepPMCKpi')+day)+and+status='Deleted' + interval: 1 + unit: Days + at: 00:15:00 + do: TaskDeleteExpiredRecord + - name: update expired user session + uri: /api/rest/databaseManagement/v1/omc_db/session + params: WHERE=NOW()+>+ADDDATE(shake_time,+interval+expires+second)+and+status='online' + body: '{"session":{"status":"offline"}}' + interval: 30 + unit: Seconds + at: + do: TaskUpdateTable + - name: clear expired log + uri: + params: + interval: 1 + unit: Days + at: 00:50:00 + do: TaskDeleteExpiredRecord + - name: Backup measure data + uri: /api/rest/databaseManagement/v1/omc_db/measure_data + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','date','task_id','ne_name','rm_uid','ne_type','granul_option','kpi_code','kpi_id','kpi_ext','start_time','end_time','value','timestamp'+union+select+id,date,task_id,ne_name,rm_uid,ne_type,granul_option,kpi_code,kpi_id,kpi_ext,start_time,end_time,value,timestamp+from+measure_data)+b + interval: 1 + unit: Days + at: 00:20:00 + do: TaskDBBackupCSVGetBySQL + - name: handshake to NF + status: Active + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/systemState + params: + interval: 1 + unit: Seconds + at: + do: TaskHandShakeToNF + - name: Export CM from NF + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/cm + params: ne_id=%s + interval: 1 + unit: Days + at: 00:15 + do: TaskExportCmFromNF + - name: Generate NRM xml file + uri: + params: + interval: 1 + unit: Day + at: 00:00,06:00,12:00,18:00 + do: GenCmXmlFile + - name: Task of Generate measure threshold alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10200 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureThresholdAlarm + - name: Task of Generate license alarm + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSCM10100 + interval: 1 + unit: Days + at: 00:30 + do: TaskGenLicenseAlarm + - name: Task of Generate NE system state alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSSM10000 + interval: 1 + unit: Seconds + at: + do: TaskGenNeStateAlarm + - name: Task of Generate Measure Report Timeout + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10201 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureReportTimeoutAlarm +# - name: Import CM to NF +# uri: /api/rest/systemManagement/v1/elementType/udm/objectType/cm +# params: ne_id=SZ_01 +# interval: 15 +# unit: Seconds +# at: +# do: TaskImportCmToNF +crontab: +# - name: 每隔1分钟执行 +# tab: 0 */1 * * * ? // crontab: rule like linux crontab +# do: CronHelloWorldTask // function name to call +# params: + - name: Generate PM xml file + status: Active + tab: 5,20,35,50 * * * * + do: GenPmXmlFile + uri: this is uri + params: Generating PM xml file diff --git a/build/omc/etc/default/tasks.yaml b/build/omc/etc/default/tasks.yaml new file mode 100644 index 0000000..f0e6561 --- /dev/null +++ b/build/omc/etc/default/tasks.yaml @@ -0,0 +1,171 @@ +# example: +# tasks: +# - name: test # task comment +# uri: # restful uri +# params: # params of url +# interval: 30 # do sometion in the interval +# unit: Seconds #Seconds/Minutes/Hours/Days/Weeks, Monday/Tuesday/.../Sunday, +# at: 00:10:00 # do at time such as xx:xx:xx +# do: HelloWorldTask # (Do what: callback function) +# +# Attention: must restart crontask after modified this file +# +tasks: + - name: test # task comment + status: Active #active/inactive + uri: # restful uri + params: # params of http url + body: # body of http request + interval: 60 # do sometion in the interval + unit: Seconds #Seconds/Minutes/Hours/Days/Weeks, Monday/Tuesday/.../Sunday, + at: 00:10:00 # do at time such as xx:xx:xx when unit such as Day/Days/Mondays... + do: TaskHelloWorld # (Do what: callback function) + - name: clear expired history alarm + uri: /api/rest/databaseManagement/v1/omc_db/alarm + params: WHERE=now()+>+ADDDATE(event_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='historyDuration')+day)+and+alarm_status='0' + interval: 1 + unit: Days + at: 00:10:00 + do: TaskDeleteExpiredRecord + - name: clear deleted custom pm kpi + uri: /api/rest/databaseManagement/v1/omc_db/pm_custom_title + params: WHERE=now()+>+ADDDATE(update_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='keepPMCKpi')+day)+and+status='Deleted' + interval: 1 + unit: Days + at: 00:15:00 + do: TaskDeleteExpiredRecord + - name: update expired user session + uri: /api/rest/databaseManagement/v1/omc_db/session + params: WHERE=NOW()+>+ADDDATE(shake_time,+interval+expires+second)+and+status='online' + body: '{"session":{"status":"offline"}}' + interval: 30 + unit: Seconds + at: + do: TaskUpdateTable + - name: clear expired log + uri: + params: + interval: 1 + unit: Days + at: 00:50:00 + do: TaskDeleteExpiredRecord + - name: Backup measure data + uri: /api/rest/databaseManagement/v1/omc_db/measure_data + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','date','task_id','ne_name','rm_uid','ne_type','granul_option','kpi_code','kpi_id','kpi_ext','start_time','end_time','value','timestamp'+union+select+id,date,task_id,ne_name,rm_uid,ne_type,granul_option,kpi_code,kpi_id,kpi_ext,start_time,end_time,value,timestamp+from+measure_data)+b + interval: 1 + unit: Days + at: 00:20:00 + do: TaskDBBackupCSVGetBySQL + - name: Backup operation log + uri: /api/rest/databaseManagement/v1/omc_db/operation_log + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'op_id','account_name','op_ip','subsys_tag','op_type','op_content','op_result','begin_time','end_time','vnf_flag','log_time'+union+select+op_id,account_name,op_ip,subsys_tag,op_type,op_content,op_result,begin_time,end_time,vnf_flag,log_time+from+operation_log)+b + interval: 1 + unit: Days + at: 00:26:00 + do: TaskDBBackupCSVGetBySQL + - name: Backup security log + uri: /api/rest/databaseManagement/v1/omc_db/security_log + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','account_name','account_type','op_ip','op_type','op_content','op_result','op_time'+union+select+id,account_name,account_type,op_ip,op_type,op_content,op_result,op_time+from+security_log)+b + interval: 1 + unit: Days + at: 00:28:00 + do: TaskDBBackupCSVGetBySQL + - name: Backup alarm log + uri: /api/rest/databaseManagement/v1/omc_db/alarm_log + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','ne_type','ne_id','alarm_seq','alarm_id','alarm_code','alarm_status','event_time','log_time'+union+select+id,ne_type,ne_id,alarm_seq,alarm_id,alarm_code,alarm_status,event_time,log_time+from+alarm_log)+b + interval: 1 + unit: Days + at: 00:30:00 + do: TaskDBBackupCSVGetBySQL + - name: handshake to NF + status: Active + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/systemState + params: + interval: 10 + unit: Seconds + at: + do: TaskHandShakeToNF + - name: Export CM from NF + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/cm + params: ne_id=%s + interval: 1 + unit: Days + at: 00:15 + do: TaskExportCmFromNF + - name: Generate NRM xml file + uri: + params: + interval: 1 + unit: Day + at: 00:00,06:00,12:00,18:00 + do: GenCmXmlFile + - name: Task of Generate measure threshold alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10200 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureThresholdAlarm + - name: Task of Generate license alarm + status: Inactive + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSCM10100 + interval: 1 + unit: Days + at: 00:30 + do: TaskGenLicenseAlarm + - name: Task of Generate NE system state alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSSM10000 + interval: 5 + unit: Seconds + at: + do: TaskGenNeStateAlarm + - name: Task of Generate Measure Report Timeout + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10201 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureReportTimeoutAlarm + - name: Monitor proces list and write system log + uri: /api/rest/databaseManagement/v1/omc_db/system_log + params: + body: + interval: 10 + unit: Seconds + at: + do: TaskWriteSystemLog + - name: Copy log to /opt/omc/ftp/log + uri: + params: cp -rf /usr/local/omc/database/*.csv /opt/omc/ftp/log + interval: 10 + unit: Minutes + at: + do: TaskRunShellCommand +# - name: Import CM to NF +# uri: /api/rest/systemManagement/v1/elementType/udm/objectType/cm +# params: ne_id=SZ_01 +# interval: 15 +# unit: Seconds +# at: +# do: TaskImportCmToNF +crontab: +# - name: 每隔1分钟执行 +# tab: 0 */1 * * * ? // crontab: rule like linux crontab +# do: CronHelloWorldTask // function name to call +# params: + - name: Generate PM xml file + status: Active + tab: 5,20,35,50 * * * * + do: GenPmXmlFile + uri: this is uri + params: Generating PM xml file +# - name: Import CM to NF +# tab: 0 * * * * * +# do: TaskImportCmToNF +# uri: /api/rest/systemManagement/v1/elementType/udm/objectType/cm +# params: ne_id=SZ_01 \ No newline at end of file diff --git a/build/omc/etc/default/testconfig.yaml b/build/omc/etc/default/testconfig.yaml new file mode 100644 index 0000000..1d0b592 --- /dev/null +++ b/build/omc/etc/default/testconfig.yaml @@ -0,0 +1,19 @@ +UDM: + capUsed: 16 + featureEnabled: [N8,N10,N13,N12] +AUSF: + capUsed: 16 + featureEnabled: [N12] +AMF: + capUsed: 16 + featureEnabled: [N1,N2,N8,N11,N12,N14,N15] +SMF: + capUsed: 16 + featureEnabled: [N4,N7,N10,N11] +UPF: + capUsed: 16 + featureEnabled: [N3,N4,N6,N9] +OMC: + capUsed: 0 + featureEnabled: [] + diff --git a/build/omc/etc/schema/cm-schema.xsd b/build/omc/etc/schema/cm-schema.xsd new file mode 100644 index 0000000..5e7e46c --- /dev/null +++ b/build/omc/etc/schema/cm-schema.xsd @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/omc/etc/schema/pm-schema.xsd b/build/omc/etc/schema/pm-schema.xsd new file mode 100644 index 0000000..bb01840 --- /dev/null +++ b/build/omc/etc/schema/pm-schema.xsd @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/systemd/4a_agent.service b/build/systemd/4a_agent.service new file mode 100644 index 0000000..6adecef --- /dev/null +++ b/build/systemd/4a_agent.service @@ -0,0 +1,16 @@ +[Unit] +Description=4A agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/4a_agent -c /usr/local/omc/etc/4a_agent.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/crontask.service b/build/systemd/crontask.service new file mode 100644 index 0000000..941d2bf --- /dev/null +++ b/build/systemd/crontask.service @@ -0,0 +1,16 @@ +[Unit] +Description=Cron task daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/bin/crontask -c /usr/local/omc/etc/crontask.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/nbi_agent.service b/build/systemd/nbi_agent.service new file mode 100644 index 0000000..2a74b46 --- /dev/null +++ b/build/systemd/nbi_agent.service @@ -0,0 +1,16 @@ +[Unit] +Description=NBI agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/nbi_agent -c /usr/local/omc/etc/nbi_agent.json +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/nbi_alarm.service b/build/systemd/nbi_alarm.service new file mode 100644 index 0000000..fb76494 --- /dev/null +++ b/build/systemd/nbi_alarm.service @@ -0,0 +1,16 @@ +[Unit] +Description=NBI alarm agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/nbi_alarm -c /usr/local/omc/etc/nbi_alarm.json +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/restagent.service b/build/systemd/restagent.service new file mode 100644 index 0000000..c44fe65 --- /dev/null +++ b/build/systemd/restagent.service @@ -0,0 +1,16 @@ +[Unit] +Description=REST agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/bin/restagent -c /usr/local/omc/etc/restconf.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/sshsvc.service b/build/systemd/sshsvc.service new file mode 100644 index 0000000..662941e --- /dev/null +++ b/build/systemd/sshsvc.service @@ -0,0 +1,16 @@ +[Unit] +Description=SSH MML service daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/sshsvc -c /usr/local/omc/etc/sshsvc.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/debbuild/DEBIAN/control b/debbuild/DEBIAN/control new file mode 100644 index 0000000..27a5f6e --- /dev/null +++ b/debbuild/DEBIAN/control @@ -0,0 +1,7 @@ +Package: OMC +Version: 1 +Section: AGrandTech +Prioritt: optional +Architecture: amd64 +Maintainer: Simon Zhangsz +Description: OMC diff --git a/debbuild/DEBIAN/postinst b/debbuild/DEBIAN/postinst new file mode 100644 index 0000000..0dce485 --- /dev/null +++ b/debbuild/DEBIAN/postinst @@ -0,0 +1,17 @@ +# !/bin/sh +echo "" +echo "* To start/stop/restart rest agent service run:" +echo " sudo systemctl start/stop/restart restagent.service" +echo " sudo systemctl start/stop/restart crontask.service" +echo "" + +systemctl enable restagent.service +systemctl enable crontask.service +systemctl daemon-reload +if ! id -u omc >/dev/null 2>&1 ; then + useradd -d /opt/omc -m -s /bin/bash -p1000ftp@kp omc; + mkdir -p /opt/omc/ftp +else + echo "user omc exist"; +fi + diff --git a/debbuild/DEBIAN/postrm b/debbuild/DEBIAN/postrm new file mode 100644 index 0000000..f9480e8 --- /dev/null +++ b/debbuild/DEBIAN/postrm @@ -0,0 +1,9 @@ +# !/bin/bash +systemctl stop nginx.service +systemctl stop restagent.service +systemctl stop crontask.service +#rm -rf /usr/local/omc +rm -rf /etc/nginx/conf.d/omc.conf +systemctl disable restagent.service +systemctl disable crontask.service +systemctl daemon-reload \ No newline at end of file diff --git a/debbuild/usr/local/omc/etc/omc/default/restconf.yaml b/debbuild/usr/local/omc/etc/omc/default/restconf.yaml new file mode 100644 index 0000000..cbfe1b1 --- /dev/null +++ b/debbuild/usr/local/omc/etc/omc/default/restconf.yaml @@ -0,0 +1,16 @@ + +logger: + file: /usr/local/omc/log/restagent.log + level: debug + +rest: + addr: 0.0.0.0 + port: 3030 + +database: + type: mysql + user: root + password: 1000omc@kp! + host: 127.0.0.1 + port: 33066 + name: omc_db diff --git a/rpmbuild/SPECS/omc.spec b/rpmbuild/SPECS/omc.spec new file mode 100644 index 0000000..68079b5 --- /dev/null +++ b/rpmbuild/SPECS/omc.spec @@ -0,0 +1,122 @@ +%define __check_files %{nil} +%define __spec_build_pre %{nil} +%define __arch_install_post %{nil} + +Name: OMC +Summary: Ruijie 5GC OMC +Version: 5GC16.1.1 +Release: 20230531 +Vendor: RuijIe Network +URL: https://www.ruijie.com.cn/ +License: commercial +Group: Applications/Communications +#BuildRoot: $PWD/rpmoutput +%description +Ruijie's 5GC OMC + +%prep +mkdir -p ${RPM_BUILD_ROOT} +cd ${RPM_BUILD_ROOT} +mkdir -p usr/local/omc/ +mkdir -p etc/nginx/conf.d +mkdir -p lib/systemd/system/ + +cd ${RPM_BUILD_DIR} +cp -rf omc/.ssh ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/mmllog ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/mmlhome ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/bin ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/run ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/etc ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/htdocs ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/log ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/backup ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/upload ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/software ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/license ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/database ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -f nginx/omc.conf ${RPM_BUILD_ROOT}/etc/nginx/conf.d/ +cp -f systemd/restagent.service ${RPM_BUILD_ROOT}/lib/systemd/system/restagent.service +cp -f systemd/crontask.service ${RPM_BUILD_ROOT}/lib/systemd/system/crontask.service +cp -f systemd/sshsvc.service ${RPM_BUILD_ROOT}/lib/systemd/system/sshsvc.service +cp -f systemd/nbi_alarm.service ${RPM_BUILD_ROOT}/lib/systemd/system/nbi_alarm.service +cp -f systemd/nbi_agent.service ${RPM_BUILD_ROOT}/lib/systemd/system/nbi_agent.service +cp -f systemd/4a_agent.service ${RPM_BUILD_ROOT}/lib/systemd/system/4a_agent.service + +%build +#cd %{buildroot}/.. +#make + +# 安装完成后执行 +%post +if ! id -u omc >/dev/null 2>&1 ; then useradd -d /opt/omc -m -s /bin/bash -p1000ftp@kp omc; else echo "user omc exist"; fi +mkdir -p /opt/omc/ftp +mkdir -p /opt/omc/ftp/log +chmod +rx /usr/local/omc +chmod +rx /usr/local/omc/* +chmod +x /usr/local/omc/run/* +chmod -R 755 /usr/local/omc/htdocs/front +systemctl daemon-reload +systemctl enable restagent.service +systemctl enable crontask.service +systemctl enable sshsvc.service +systemctl enable nbi_alarm.service +systemctl enable nbi_agent.service +systemctl enable 4a_agent.service +systemctl enable nginx.service +systemctl restart nginx.service + +# 卸载时执行 +%postun +if [ "$1" = "0" ] ; then +systemctl stop nginx.service +systemctl stop restagent.service +systemctl stop crontask.service +systemctl stop sshsvc.service +systemctl stop nbi_alarm.service +systemctl stop nbi_agent.service +systemctl stop 4a_agent.service +#rm -rf /usr/local/omc +rm -rf /etc/nginx/conf.d/omc.conf +systemctl disable restagent.service +systemctl disable crontask.service +systemctl disable sshsvc.service +systemctl disable nbi_alarm.service +systemctl disable nbi_agent.service +systemctl disable 4a_agent.service +systemctl daemon-reload +else +systemctl daemon-reload +systemctl restart nginx.service +systemctl restart restagent.service +systemctl restart crontask.service +systemctl restart sshsvc.service +systemctl restart nbi_alarm.service +systemctl restart nbi_agent.service +systemctl restart 4a_agent.service +fi + +# 规定那些文件必须放入安装程序中,如果没有就报错 +%files +%defattr(-,root,root) +/usr/local/omc/.ssh +/usr/local/omc/mmllog +/usr/local/omc/mmlhome +/usr/local/omc/bin +/usr/local/omc/run +/usr/local/omc/etc +/usr/local/omc/htdocs +/usr/local/omc/log +/usr/local/omc/backup +/usr/local/omc/upload +/usr/local/omc/software +/usr/local/omc/license +/usr/local/omc/database +/etc/nginx/conf.d/omc.conf +/lib/systemd/system/restagent.service +/lib/systemd/system/crontask.service +/lib/systemd/system/sshsvc.service +/lib/systemd/system/nbi_alarm.service +/lib/systemd/system/nbi_agent.service +/lib/systemd/system/4a_agent.service +