ChangeLog
0.11.0 - 2021-11-01
Feature enhancements:
RNDNXSREST-566: Improved messages for common Scheduler errors
Bug fixes:
RNDNXSREST-569: Make ETags stable across populate calls
0.10.0 - 2021-09-21
Feature enhancement:
RNDNXSREST-558: New right for submitting ReconcileDBTask
RNDNXSREST-559: Don’t write default samba masks
RNDNXSREST-563: Add examples to Open API (Swagger) docs
RNDNXSADUI-307: Support for submitting ReconcileDBTask to schedulers
Bug fixes:
RNDNXSREST-557: Disable support for bi-directional BoxSync Replicas
RNDNXSREST-564: Missing sudoers permission for mmchfileset
0.9.0 - 2021-07-30
Feature enhancements:
RNDBOXSYNC-118: Update path for pix2rclone command
0.8.0 - 2021-07-13
Bug fixes:
RNDNXSREST-380: ETag calculation references irrelevant fields
RNDNXSREST-479: Don’t write empty string values to samba config
RNDNXSREST-546: Handle missing profile gracefully
Feature enhancements:
RNDNXSREST-294: Support for changing space inode limits
0.7.0 - 2021-05-14
Bug fixes:
RNDNXSREST-493: Set usage to null when quotas are unset
RNDNXSREST-495: Limit which users need sudoers for mmlscluster
RNDNXSREST-497: Delete error if provider was already deleted
RNDNXSREST-506: Update doc examples to use UUIDs
RNDNXSREST-507: Fix errors in the walkthrough docs
RNDNXSREST-510: SQL error from bidirectional replica delete
RNDNXSREST-519: Don’t allow deleting space with replicas
RNDNXSREST-520: Try to cleanup BoxSync DB on replica delete
RNDNXSREST-521: Don’t allow multiple replicas in the same direction to the same space
RNDNXSREST-522: Handle when rclone replica initial snapshot exists
RNDNXSREST-523: Set status to PENDING after first bidirectional replica delete
RNDNXSREST-524: Don’t return box provider template if BoxSync isn’t enabled
Feature enhancements:
RNDNXSREST-461: Add providers to object model
RNDNXSREST-461: Add support for box.com oAuth2 flow
RNDNXSREST-462: Add replicas to object model
RNDNXSREST-463: Populate providers and replicas
RNDNXSREST-465: Tasks for enacting provider changes
RNDNXSREST-465: Tasks for enacting replica changes
RNDNXSREST-490: Improve user-facing logging
RNDNXSREST-493: Set usage to null when quotas are unset
0.6.0 - 2021-03-05
Updated EULA
Bug fixes:
RNDNXSREST-130: Skip filesystems with no default placement policy
RNDNXSREST-406: Prevent recursive include in pixmanaged samba shares
RNDNXSREST-443: Set item status to ERRORED if job fails to submit
RNDNXSREST-449: Can’t delete non-pixmanaged shares
Feature enhancement:
RNDNXSREST-285: Ability to set a max size for templates
RNDNXSREST-352: Improve adminctl populate logging
RNDNXSREST-367: Support for allowing shares with invalid paths
RNDNXSREST-431: Ability to check if policy rules need to be installed
RNDNXSREST-453: Report space quota usage
RNDNXSREST-454: Support for setting size (quota) on dependent fileset spaces
RNDNXSREST-457: Support for reconciling non-ACTIVE database entries
Refactoring:
RNDNXSREST-455: Update to use rights instead of roles
0.5.0 - 2020-09-25
RNDNXSREST-360: Rebrand as PixStor Management
Refactoring:
RNDNXSREST-321: Rewrite samba config handling
RNDNXSREST-328: Bring Eve-SQLAlchemy up to date with official version 0.7.1
RNDNXSREST-329: File security moved to apcore-utils
RNDNXSREST-353: move populate from REST server start-up to ‘adminctl populate’
Bug fixes:
RNDNXSREST-324: Server won’t start if a data pool has no available disks
RNDNXSREST-381: Improve share mismatch error message
RNDNXSREST-383: 502 error on CIFS exposer creation
RNDNXSREST-385: Erroneous NFS share mismatch error
Feature enhancements:
RNDNXSREST-365: Ability to auto-convert system shares to pixmanaged on modification
RNDNXSREST-386: Add locking to adminctl populate now
0.4.0 - 2019-08-05
Feature enhancements:
RNDNXSREST-288: Submit async jobs as the token user
Bug fixes:
RNDNXSREST-253: Don’t automatically delete snapshots on space delete
RNDNXSREST-275: Errors from duplicated samba shares
RNDNXSREST-282: Error creating template from restricted
RNDNXSREST-289: Perform path exists checks as request user
RNDNXSREST-293: Rollback fileset unlink on delete or update fail
Feature enhancements:
RNDNXSREST-283: Ability to configure default space inodes
0.3.3 - 2020-02-14
Bug fixes:
RNDNXSREST-254: Fix logic for when to create default placement rules
RNDNXSREST-347: Space update shouldn’t relink path when path hasn’t changed
0.3.2 - 2020-02-10
Feature Enhancements:
RNDNXSREST-346: OpenAPI (Swagger) config for the REST API
0.3.1 - 2019-11-28
Bug fixes:
RNDNXSREST-338: Numerical names cause validation errors
0.3.0 - 2019-05-30
Bug fixes:
RNDNXSREST-151: Don’t allow recursive template copy
RNDNXSREST-211: CIFS exposer comment update not committed to file
RNDNXSREST-212: sudoers file to specify what commands need to run as root
RNDNXSREST-224: User-friendly error messages for database constraint errors
RNDNXSREST-227: Handle CIFS ‘browseable’ synonym
RNDNXSREST-230: Error when sorting on polymorphic fields
RNDNXSREST-252: Error when PATCHing unchanged values
RNDNXSADUI-424: Don’t expand dotted ‘extras’ keys
RNDNXSREST-250: Correctly handle multiple includes lines in samba config files
RNDNXSREST-255: Ability to query GPFS snapshots by filesystem
erroneous nfs shares name validation error
Feature enhancement:
RNDNXSREST-26: Support for unique error codes
RNDNXSREST-82: Support for populating non-nexus filesets
RNDNXSREST-185: Improved pre-insert validations
RNDNXSREST-205: Ability to configure HTCondor deferral window
RNDNXSREST-213: Add X-Total-Count header to /jobs response
RNDNXSREST-217: Support for
Exposer.spaces
andTemplate.spaces
back-referencesRNDNXSREST-218: Support for query by embedded field
RNDNXSREST-219: Support for query by related object
RNDNXSREST-221: Support for sorting by embedded field
RNDNXSREST-223: Document supported ‘extras’
RNDNXSREST-260: Audit logging of database changes
RNDNXSREST-266: Support for create-only and create-update roles
Refactoring:
RNDNXSREST-41: Bring internal Eve-SQLAlchemy up to date with the official repo
Remove multi-table inheritance. Existing databases will need to be rebuilt.
0.2.3 - 2019-02-28
Bug fixes:
RNDNXSREST-233: Make sure templates are removed from spaces after uninstall
RNDNXSREST-234: More logging from template tools
0.2.2 - 2018-12-12
Bug fixes:
RNDNXSREST-152: Don’t create filesets in the template store
RNDNXSREST-197: Missing auth role support for jobs endpoints
RNDNXSREST-198: Can’t delete templated space if server can’t view it
RNDNXSREST-199: Template delete error when logging is set to INFO
0.2.1 - 2018-12-03
Bug fixes:
RNDNXSREST-189: Template create fails for certain ACLs
RNDNXSREST-190: Don’t allow deleting installed templates
Feature Enhancements:
RNDNXSREST-12: Support for role-based authorisation
0.2.0 - 2018-10-18
Bug fixes:
RNDNXSREST-136: Ignore None values is Samba share create
0.1.0 - 2018-10-09
Bug fixes:
Delete fileset snapshots before deleting a space
RNDNXSREST-25: Fix prompts in C+J responses
RNDNXSREST-50: Permission error during template delete
RNDNXSREST-54: Skip reconcile for INPROGRESS objects
RNDNXSREST-68: Remove existing reconcile jobs on server start up
RNDNXSREST-70: Prevent restarting of ‘active’ jobs
RNDNXSREST-84: Create profile rule for default placement pool
RNDNXSREST-85: Clarify logging for spaces with no fileset comment
RNDNXSREST-97: Remove ERRORED reconcile jobs on server restart
RNDNXSREST-105: Skip reconcile for objects not in state ACTIVE
RNDNXSREST-106: Samba parser incorrectly splits colons in field names
RNDNXSREST-110: Remove null resouce links
RNDNXSREST-119: Make Share Delete Idempotent
RNDNXSREST-120: Delete nfs share fails for paths with multiple client entries
RNDNXSREST-123: Reconcile doesn’t properly check for status changes
RNDNXSREST-128: Ability to unset SMB share options
RNDAPSCHED-10: Recurring jobs should have DEFERRED status
RNDAPSCHED-25: Stop deferred jobs immediately claiming a slot in HTCondor
RNDNXSADUI-249: Some polymorphic classes return incorrect ‘resource’ links
RNDNXSADUI-268: Make sure generated NFS Exposer names are unique
RNDNXSADUI-269: Stop reconcile deleting objects that haven’t been built yet
RNDNXSADUI-284: SMB share comments are being written to file
RNDNXSADUI-286: NFS anonuid not set correctly
RNDNXSADUI-298: NFS updates couldn’t handle duplicate params
RNDNXSADUI-310: Skip populate for invalid NFS shares
RNDNXSADUI-313: Couldn’t delete templates that errored during build
RNDNXSADUI-315: De-associate templates from spaces on template deletetion
Feature Enhancements:
RNDNXSREST-31: Improved functionality for populating/reconciling database from cluster
RNDNXSREST-38: Support for uninstalling ‘empty’ templates from a space before delete
RNDNXSREST-40: Support for restarting jobs
RNDNXSREST-46: Add uwsgi script
RNDNXSREST-47: Improved support for NFS and SMB shares
RNDNXSREST-57: Support for deferred and recurring job submission
RNDNXSREST-62: Support for cancelling jobs
RNDNXSREST-113: Add PENDING status for objects with jobs waiting to run
RNDNXSREST-116: Make sure HTCondor jobs respect virtual environments
RNDNXSADUI-301: Support for cross-filesystem template install
RNDNXSADUI-305: Templates copy and apply GPFS acls
RNDFIXSTOR-358: Trigger csync2 on share update
Refactoring:
Rename from development codename ‘restpit’
Run populate/reconcile via the job engine
Run populate every 5 minutes
Standardised job states across different job engines
RNDNXSREST-20: Replace numberical ids with UUID-based ids
RNDNXSREST-36: Move configs to APConfig
RNDNXSREST-39: Populate sets status of new entries to ACTIVE
RNDNXSREST-48: Validation errors return 422 (unprocessable entity) rather than 500 (internal server)
RNDNXSREST-63: Improved logging
RNDNXSREST-69: Jobs which complete with errors get state FAILED (rather than COMPLETED)
RNDNXSREST-73: Ability to configure which job engine is used (via APConfig)
RNDNXSREST-86: Ability to configure reconcile frequency (via APConfig)
RNDNXSREST-88: Supress SSL warnings from logging
RNDNXSREST-115: Make populate helper methods private
RNDNXSREST-125: Make template creation atomic
RNDAPSCHED-9: Job logs always return mimetype text/plain
RNDAPSCHED-27: Support for multi-node htcondor
RNDNXSADUI-221: Change Space default maxInodes:allocInodes to 20000:10000
RNDNXSADUI-250: Don’t set default values for smb share configs if not necessary
RNDNXSADUI-275: Soft-delete behaviour
RNDNXSADUI-301: Remove hardcoded references to ‘mmfs1’ in template tasks
RNDNXSADUI-311: Return most recent start time for recurring jobs
RNDFIXSTOR-319: NFS exposers are per-client
Incompatible changes:
- RNDNXSREST-75: Rename template-related xattrs to remove references to development codename.
Objects which use the old xattrs should be updated manually.
- RNDNXSREST-113: Newly introduced PENDING state is incompatible with existing databases.
Any existing database will need to be deleted and rebuilt from scratch
0.0.3 - 2018-03-22
Bug fixes:
RNDFIXSTOR-372: IndependentFileset created under wrong inode space
RNDFIXSTOR-376: Incorrect allocInodes set for spaces
Feature Enhancements:
Add logging to threadedbasic job engine - job output can be checked via /jobs endpoint
Create default placement rules in filesystem policy (if they don’t exist)
RNDFIXSTOR-324: Ability to populate the database from cluster on startup
RNDFIXSTOR-363: Add security to /jobs endpoint (requires token like other endpoints)
Refactoring:
Increase default pagination limit
Use APCondor for HTCondor engine, instead of custom wrapper
Use APAuth instead of builtin auth server
Use xattr to indicate what templates are installed in a space (to support populate)
RNDNXSREST-33: Change fileset naming convention to include target pool as prefix
RNDFIXSTOR-307: disable ability to change space name
RNDFIXSTOR-373: Don’t create default template on populate
0.0.2 - 2017-03-09
Feature Enhancements:
Copy Eve SQLAlchemy repo to project
Eve SQLAlchemy: Support for polymorphic classes
Make auth server return json (rather than html)
Support for thinly provisioned spaces (maximum size)
Support for HTCondor-based job engine
RNDNXSREST-2: Support for FilesystemTemplates
RNDNXSREST-8 + RNDNXSREST-22: Support for /jobs endpoint to query status of jobs in the job engine
RNDNXSREST-9: Basic support for NFS and SMB exposers
RNDNXSREST-19: Collection+JSON parser and renderer - support for sending and receiving C+J payloads
RNDNXSREST-21: Prevent jobs from making conflicting changes to the same resource
RNDNXSREST-23: Swagger docs endpoint
Refactoring:
Name filesets (for spaces) based on space id
RNDNXSREST-6: Decouple auth server
0.0.1 - 2016-07-27
Initial implementation