Commit db2cb58c authored by Ivan Malenkov's avatar Ivan Malenkov
Browse files

Initial commit

parents
Loading
Loading
Loading
Loading
Loading

.gitlab-ci.yml

0 → 100644
+32 −0
Original line number Diff line number Diff line
image: alpine-rsync:latest

variables:
  LIB_MAJOR_VERSION: "1.0"
  BUILD_VERSION: "$LIB_MAJOR_VERSION.$CI_PIPELINE_ID.$CI_COMMIT_REF_NAME"

stages:
  - prepare
  - notify

prepare:
  stage: prepare
  script:
    - echo "=== BUILD VERSION ${BUILD_VERSION} ==="
    - echo "${BUILD_VERSION}" > version.lxt
  artifacts:
    name: "netondoweb"
    paths:
      - .

notify_ok:
  stage: notify
  script:
    - ~/alert.sh true
  when: on_success

notify_nok:
  stage: notify
  script:
    - ~/alert.sh false
  when: on_failure

serve.py

0 → 100644
+44 −0
Original line number Diff line number Diff line
#!/usr/bin/env python3

from http.server import BaseHTTPRequestHandler, HTTPServer
import logging

class S(BaseHTTPRequestHandler):
    def _set_response(self):
        self.send_response(200)
        self.end_headers()

    def do_GET(self):
        logging.info("GET request,\nPath: %s\nHeaders:\n%s\n", str(self.path), str(self.headers))
        self._set_response()
        self.wfile.write("GET request for {}".format(self.path).encode('utf-8'))

    def do_POST(self):
        content_length = int(self.headers['Content-Length']) # <--- Gets the size of data
        post_data = self.rfile.read(content_length) # <--- Gets the data itself
        logging.info("POST request,\nPath: %s\nHeaders:\n%s\n\nBody:\n%s\n",
                str(self.path), str(self.headers), post_data.decode('utf-8'))

        self._set_response()
        self.wfile.write("POST request for {}".format(self.path).encode('utf-8'))

def run(server_class=HTTPServer, handler_class=S, port=8001):
    logging.basicConfig(level=logging.INFO)
    server_address = ('', port)
    httpd = server_class(server_address, handler_class)
    logging.info('Starting httpd...\n')
    try:
        httpd.serve_forever()
    except KeyboardInterrupt:
        pass
    httpd.server_close()
    logging.info('Stopping httpd...\n')

if __name__ == '__main__':
    from sys import argv

    if len(argv) == 2:
        run(port=int(argv[1]))
    else:
        run()