Parcourir la source

update dns api

scofield il y a 5 ans
Parent
commit
afe3110825
4 fichiers modifiés avec 63 ajouts et 35 suppressions
  1. 4 3
      .drone.yml
  2. 1 30
      Dockerfile
  3. 36 0
      Dockerfile.base
  4. 22 2
      ppctl.py

+ 4 - 3
.drone.yml

@@ -4,19 +4,19 @@ name: book-touchrs
 
 steps:
  - name: build
-   image: hub.evbj.easou.com/dev/drone-agent-custom:v1.0.0
+   image: hub.evbj.easou.com/dev/drone-agent-custom:v2.0.0
   #  pull: always
    privileged: true
    environment:
      JNLP_ENV: qa
      JNLP_REPO: hub.evbj.easou.com
-     JNLP_TAG: v1.0.1
+     JNLP_TAG: v1.0.2
      JNLP_CONTAINER_PORT: 8080
     #  JNLP_WAR: ums.war
      JNLP_INGRESS: nginx
      JNLP_SVC_MODE: http
      JNLP_STORAGE_CLASS: ceph
-     JNLP_DOMAIN: .appeasou.com
+     JNLP_DOMAIN: .adunion.vip
      JNLP_CONTROL: StatefulSet
      JNLP_REPLICAS: 2
      JNLP_STORAGE_CAPACITY: 200Gi
@@ -32,6 +32,7 @@ steps:
      - python ppctl.py -b
      - python ppctl.py -a
      - python ppctl.py -c
+     - python ppctl.py -d
 
  - name: success
    image: clem109/drone-wechat

+ 1 - 30
Dockerfile

@@ -1,36 +1,7 @@
 #centos68-resin:3.1.6-jdk6
-FROM hub.evbj.easou.com/dev/centos:6.8
-
+FROM hub.evbj.easou.com/qa/book-touchrs:v1.0.1
 LABEL author="scofield[scofield_shi@staff.easou.com]"
 
-ENV LANG C.UTF-8
-ENV TZ=Asia/Shanghai
-ENV JAVA_HOME /usr/java/jdk1.6.0_21
-ENV RESIN_HOME /app/soft/resin-pro-3.1.6
-ENV WAR="http://10.26.22.185:9000/psop/conf/dockerConfig/book-touchrs/ROOT.war"
-
-ADD http://10.26.22.185:9000/psop/conf/dockerConfig/resin-api/gosu /usr/local/bin/gosu
-ADD http://10.26.22.185:9000/psop/soft/resin-pro-3.1.6.tar.gz /app/soft/resin-pro-3.1.6.tar.gz
-ADD http://10.26.22.185:9000/psop/soft/skywalking-agent.tgz /app/soft/skywalking-agent.tgz
-
-#install jdk
-RUN rpm -Uvh http://10.26.22.185:9000/psop/soft/jdk-6u21-linux-amd64.rpm \
-    && useradd book \
-    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \
-    && chmod +x /usr/local/bin/gosu \
-    && gosu nobody true
-
-#install resin-3.1.6
-RUN tar -zxf /app/soft/resin-pro-3.1.6.tar.gz -C /app/soft  \
-    && rm -f /app/soft/resin-pro-3.1.6.tar.gz \
-    && rm -rf /app/soft/resin-pro-3.1.6/webapps/* \
-    && rm -f /app/soft/resin-pro-3.1.6/conf/resin.conf
-
-ADD $WAR  /app/soft/resin-pro-3.1.6/webapps/
-ADD entrypoint.sh /usr/bin/entrypoint.sh
-ADD resin.conf /app/soft/resin-pro-3.1.6/conf/resin.conf
-RUN chown book:book -R /app/soft  && chmod +x /usr/bin/entrypoint.sh
-
 #start resin
 ENTRYPOINT ["entrypoint.sh"]
 CMD ["gosu", "book", "/app/soft/resin-pro-3.1.6/bin/httpd.sh"]

+ 36 - 0
Dockerfile.base

@@ -0,0 +1,36 @@
+#centos68-resin:3.1.6-jdk6
+FROM hub.evbj.easou.com/dev/centos:6.8
+
+LABEL author="scofield[scofield_shi@staff.easou.com]"
+
+ENV LANG C.UTF-8
+ENV TZ=Asia/Shanghai
+ENV JAVA_HOME /usr/java/jdk1.6.0_21
+ENV RESIN_HOME /app/soft/resin-pro-3.1.6
+ENV WAR="http://10.26.22.185:9000/psop/conf/dockerConfig/book-touchrs/ROOT.war"
+
+ADD http://10.26.22.185:9000/psop/conf/dockerConfig/resin-api/gosu /usr/local/bin/gosu
+ADD http://10.26.22.185:9000/psop/soft/resin-pro-3.1.6.tar.gz /app/soft/resin-pro-3.1.6.tar.gz
+ADD http://10.26.22.185:9000/psop/soft/skywalking-agent.tgz /app/soft/skywalking-agent.tgz
+
+#install jdk
+RUN rpm -Uvh http://10.26.22.185:9000/psop/soft/jdk-6u21-linux-amd64.rpm \
+    && useradd book \
+    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \
+    && chmod +x /usr/local/bin/gosu \
+    && gosu nobody true
+
+#install resin-3.1.6
+RUN tar -zxf /app/soft/resin-pro-3.1.6.tar.gz -C /app/soft  \
+    && rm -f /app/soft/resin-pro-3.1.6.tar.gz \
+    && rm -rf /app/soft/resin-pro-3.1.6/webapps/* \
+    && rm -f /app/soft/resin-pro-3.1.6/conf/resin.conf
+
+ADD $WAR  /app/soft/resin-pro-3.1.6/webapps/
+ADD entrypoint.sh /usr/bin/entrypoint.sh
+ADD resin.conf /app/soft/resin-pro-3.1.6/conf/resin.conf
+RUN chown book:book -R /app/soft  && chmod +x /usr/bin/entrypoint.sh
+
+#start resin
+ENTRYPOINT ["entrypoint.sh"]
+CMD ["gosu", "book", "/app/soft/resin-pro-3.1.6/bin/httpd.sh"]

+ 22 - 2
ppctl.py

@@ -10,6 +10,11 @@ from kubernetes.client.rest import ApiException
 from pprint import pprint
 from kubernetes import client, config
 import sys, getopt, random
+from aliyunsdkcore.client import AcsClient
+from aliyunsdkcore.acs_exception.exceptions import ClientException
+from aliyunsdkcore.acs_exception.exceptions import ServerException
+from aliyunsdkalidns.request.v20150109.AddDomainRecordRequest import AddDomainRecordRequest
+from aliyunsdkalidns.request.v20150109.DeleteDomainRecordRequest import DeleteDomainRecordRequest
 
 
 JNLP_ENV = os.getenv('JNLP_ENV')
@@ -123,7 +128,7 @@ def deployStatus():
     stsname = JNLP_CONTROL_NAME
     pretty = "true"
     for x in range(20):
-        try: 
+        try:
             sts_response = appsv1_api_instance.read_namespaced_stateful_set_status(stsname, namespace, pretty=pretty)
             if sts_response.status.replicas == sts_response.status.ready_replicas :
                 print("===>>> " +stsname + " is RUNNING <<<===")
@@ -168,6 +173,21 @@ def dnsAllocation():
         print(">>> Ingress error, Only nginx !!! <<<")
     return
 
+def cloudDns():
+    if JNLP_INGRESS == "nginx":
+        client = AcsClient('LTAI4LibOCW5ilIa', 'NiA9OumXJDHp4TwLwXWcCKGoDgDjms', 'cn-hangzhou')
+        # add record
+        request = AddDomainRecordRequest()
+        request.set_accept_format('json')
+        request.set_Value("scofield888888")
+        request.set_Type("txt")
+        request.set_RR("_dnsauth.8888")
+        request.set_DomainName("appeasou.com")
+        response = client.do_action_with_exception(request)
+        print(response)
+    else :
+        print(">>> Ingress error, Only nginx !!! <<<")
+    return
 
 def main(argv=None):
     if argv is None:
@@ -188,7 +208,7 @@ def main(argv=None):
                 sys.exit()
             if opt_name in ('-d','--dns'):
                 print("===>>> update dns resolve <<<===")
-                dnsAllocation()
+                cloudDns()
                 sys.exit()
     return