1. 07 Sep, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      Integration tests make target · fd49d2a5
      Ciarán Ó Rourke authored
      Integration tests executable using 'make integration_tests'. Clean up CI
      a bit.
      Change log:
      * add integration_tests as a CMake target
      * use integration_tests make target in CI
      * update README
      * CMake command compatible with CentOS7
      * CI adjustments
  2. 02 Sep, 2020 1 commit
  3. 24 Aug, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      CentOS7 CI · 07d5e8ab
      Ciarán Ó Rourke authored
      Create a CI job for running the unit tests and integration tests on
      Change log:
      * Fix Documentation path
      * Ci job for CentOS7
  4. 21 Aug, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      Get CI running on CentOS8 · 4557e4d4
      Ciarán Ó Rourke authored
      Change log:
      * get unit tests and integration tests working for default job
      * get format job working
      * satisfy clang-format
      * get Documentation job working
      * use custom target_link_system_libraries command to force system
      * statements inside braces to satisfy clang-tidy
      * remove clang-tidy macro checks
  5. 18 Aug, 2020 2 commits
    • Ciarán Ó Rourke's avatar
      Support CentOS8 · 3847d8d1
      Ciarán Ó Rourke authored
      Various adjustments to build and pass tests on CentOS8
      Change log:
      * move setting of installation directories to src/CMakeLists.txt (needs to be where target is created)
      * explicitly find Boost::iosteams
      * buffer for storing empty file causes exception so add 1 to size
    • Ciarán Ó Rourke's avatar
      Support newer Phobos version · 4f72c208
      Ciarán Ó Rourke authored
      Changes to Phobos wrapper to reflect updated Phobos API.
      Change log:
      * make unit test a make target again
      * remove deprecated and redundant target_link_directories call
      * redesign phobos_cpp_wrapper for new Phobos version
      * hardcode request of directory storage in Phobos for now
  6. 21 Jul, 2020 1 commit
  7. 07 Jul, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      Update Deimos to new superbuild · bc23380f
      Sophie Wenzel-Teuber authored
      * Add Find scripts to CMake to search for phobos and spdlog
      * Add integrations tests to cmake by just copying the python code to the build directory
      * Update Readme to reflect new SuperDeimos layout and add brief description
  8. 03 Jul, 2020 1 commit
  9. 02 Jul, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      * project version · ac507741
      Ciarán Ó Rourke authored
      * set install directories through CMake
      * print built subdirectories during build
      * set up installation directories
      * use development flags during debug build
      * remove authorisation double negative cmake variable
      * update README
  10. 22 Jun, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      Fix a bug in S3 header · 5f97c454
      Sophie Wenzel-Teuber authored
      get body length was throwing an exception when the Content-Length header was missing
      * Add more error checks to s3 header class
      * Add unit tests for s3 header class covering all typical use cases
      * Add check for Markdown documentation to gitlab CI
  11. 18 Jun, 2020 2 commits
    • Ciarán Ó Rourke's avatar
      Rename Project · 2238f58c
      Ciarán Ó Rourke authored
      Rename project from FiPhoboServer to Deimos
      Change log:
      * replace all occurances of variations of fiphoboserver with its deimos
    • Ciarán Ó Rourke's avatar
      Implement logging · 99ca98cf
      Ciarán Ó Rourke authored
      Use the spdlog library for project wide logging to a file. Path of
      logfile is configurable as command line option.
      Change log:
      * use spdlog
      * set global logging to file
      * logfile as command line option
      * update README command line option section with logfile option
      * update README command line option section with default values for options
      * control log level with CMake build type variable
      * log received request
      * get request logging
      * put request logging
      * getmd request logging
      * fifo logging
      * rename authorisation macro to comply with linter
      * use rotating files with size limit
  12. 15 Jun, 2020 1 commit
  13. 11 Jun, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      Update the Metadata generation · ac693d84
      Sophie Wenzel-Teuber authored
      * Add `fiphobo:` prefix to all metadata saved by our server, that should not be sent back directly
      * When sending the metadata, all entries starting with `fiphobo:` are ignored
      * remove the bucket_name entry from all set metadata functions throughout the server and add the bucketname where all other metdata is set (put handler)
  14. 10 Jun, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      Update the server to work with Estuary copytool · dc31d3c1
      Sophie Wenzel-Teuber authored
      * Add content_length to phobos metadata
      * Send the content_length from phobos metadata as header Content-Length
      * Add all Phobos Metadata (formerly retrieved only by a HEAD request) as headers to the response to a GET request
  15. 05 Jun, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      Unit Tests Patch · e9afd4a8
      Ciarán Ó Rourke authored
      Authorisation unit tests were being run when the project was built with authorisation disabled. Aurhorisation unit tests are now moved to a dedicated file that is built conditionally. Some changes are also made to the CI YAML file.
      Change log:
      * Move authorisation tests to dedicated file
      * disable authorisation tests when building without authorisation
      * default CI job runs unit tests and integration tests
      * add CI job for build w/o authorisation
      * rename Doxygen job to Documentation
  16. 26 May, 2020 1 commit
  17. 13 May, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      More flexible error creation · 499566af
      Sophie Wenzel-Teuber authored
      All different kinds of errors our server sends are in compliance with Amazon S3 errors. They are now stored in one place and should be accessed from anywhere.
      * add the file s3_errors.h that contains const objects for all errors that might occur (most of them are not checked yet)
      * change struct error_info into a class and add a function to create the XML from the object's variables
      * Use these errors in the request handlers
      * Add an error object to the s3 authorisation that will always contain "Access Denied" or another error if applicable
      * Update tests to test the code generation and error return values
  18. 11 May, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      Update for new master branch merge · 3a557d35
      Sophie Wenzel-Teuber authored and Aaron Dees's avatar Aaron Dees committed
      * Build documentation
      * Add new flag to CMake to build Documentation with Doxygen, but without the Markdown converter
      * Update CI for new CMake variable
      * Update README to reflect changes
  19. 07 May, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      Make server a daemon process. Support for start and stop subcommands. · 1f7100b0
      Ciarán Ó Rourke authored
      Outline usage profile of the fiphoboserver executable in the README
      Change log:
      * start server daemon subcommand
      * move appropriate flags to start subcommand
      * main function forks process given start command
      * stop command to kill running server process
      * integration tests: reflect subcommand invoking of server
      * detail usage in README
  20. 05 May, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      Support command line parsing and configuration files · ba82dd36
      Ciarán Ó Rourke authored
      Change log:
      * src/utils directory for configuration, logging, etc
      * Config class for handling configuration (command line parsing, etc)
      * include Catch2 and CLI11 as system files so clang-tidy will ignore
      * support basic command line options:
            - hostname (positional, required)
            - number of threads
            - http_port
            - https_port
      * add configuration to fiphoboserver executable main function
      * return on exception for incompatible hostname
      * return after parsing command line arguments if arguments are bad
        or --help is supplied
      * don't pass command line arguments to folly
      * Config returns struct of command line options
      * accept configuration options from config file
      * option to write current configuration to file
      * integration tests: reflect changes to fiphoboserver executable
  21. 24 Apr, 2020 2 commits
  22. 21 Apr, 2020 1 commit
  23. 15 Apr, 2020 1 commit
    • Sophie Wenzel-Teuber's avatar
      Add Amazon Authorisation · 18b7825f
      Sophie Wenzel-Teuber authored
      The signature of amazon users is checked against a text file of known users and requests are accepted or rejected depending on the signature
  24. 14 Apr, 2020 3 commits
  25. 09 Apr, 2020 3 commits
  26. 08 Apr, 2020 2 commits
  27. 07 Apr, 2020 1 commit
  28. 03 Apr, 2020 2 commits
    • Ciarán Ó Rourke's avatar
      Develop integration testing and run during CI · 9569a15f
      Ciarán Ó Rourke authored
      * separate directories for unit tests and integration tests
      * text files directory for testing server functions
      * module for s3 utility functions
      * module for file comparison utility functions
      * module for generating random keys and meta data
      * handle server executable within tests
      * basic test for PUT and GET
      * PUT and GET test for zero-byte file
      * add integration testing to CI
      * correct Clang Tidy job
      * PUT command supports optional meta data
      * test for GETMD
      * test that GET with bad key fails
      * test that PUT with used key fails
    • Aaron Dees's avatar
      Merge branch '8-ci' into 'devel' · 88a6e21c
      Aaron Dees authored
      Resolve "CI"
      See merge request oilgas/ltfs/fiphoboserver!22
  29. 02 Apr, 2020 1 commit
    • Ciarán Ó Rourke's avatar
      * src/storage/phobos_file.cc: need to set xd_objid to NULL to avoid double free · 1392c1f9
      Ciarán Ó Rourke authored
      * src/storage/phobos_file.hexplicit copy constructors to avoid double free of xd_objid
      * tests: reflect meta data change to std::map from std::vector
      * run Clang Format
      * resolve Clang Tidy warnings
      * add Gitlab-CI
      * use fiphoboserver docker image
      * update DockerHub image with Doxygen requirements
      * CI: Clang Format job
      * CI: Clang Tidy job
      * CI: Doxygen build job
      * CI: Unit Tests job
  30. 31 Mar, 2020 2 commits