Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Tags: djinn-ci/djinn

Tags

v1.3.0

Toggle v1.3.0's commit message
Release notes:

* Implement support for build pinnning, this will prevent artifacts on
pinned builds from being deleted during curation
* Fix bug that prevented build namespaces in the UI from linking to the
namespace
* Fix CSS bug that broke the horizontal scrollbar when viewing the
overview of a build

Changelog:

Andrew Pillar (18):
      Fix CSS style bug
      Use new OAuth2 login route
      Load namespace owner for build's namespace
      Fix broken scrollbar
      Fix bug that didn't load in latest webhook deliveries correctly
      Add dev revision for adding os to driver_type enum
      Begin implementing pinned builds
      Ignore builds that are pinned during artifact curation
      Set user relation when loading build from URI
      Render pushpin alongside pinned builds in UI
      Expand integration test to include testing of pinning/unpinning builds
      Respond with 405 on any non GET request to API endpoint
      Add templated systemd service file for djinn-server
      Store -dsn value in environment variable for ease of editing
      Wrap variable in quotes
      Bump required Go version
      Run go mod tidy
      Add integration test for artifact curation

v1.2.2

Toggle v1.2.2's commit message
General bug fixes and quality of life improvements

Changelog:

Andrew Pillar (11):
      Correct manifest docs
      Update local development tooling and guide
      Fix up mgrt order execution
      Redirect to the OAuth2 URL when logging in via a provider
      Correctly check for namespace owner when accessing certain paths
      Allow collaborators to create and view namespace webhooks
      Load webhook author information when displayed
      Use consistent styling for webhook output as build output
      Expose namespace badge endpoint over API
      Correctly check for API errors for collaborators accessing webhooks
      Remove println

v1.2.1

Toggle v1.2.1's commit message
* Set X-Frame-Options header to protect against click-jacking attacks

Changelog:

Andrew Pillar (4):
      Fix up logic errors in oauth2 login flow
      Force x86_64 arch for offline runner
      Tidy modules
      Set X-Frame-Options: deny on all responses to prevent click-jacking

v1.2.0

Toggle v1.2.0's commit message
v1.2.0

Release notes:

* Implement variable masking
* Slugify job names
* Performance improvements around loading namespace builds
* General bug fixes

Changelog:

Andrew Pillar (61):
      Generate random key for session ID
      Build from main branch
      Set DJINN_API_SERVER variable for integration tests
      Load relations for tags on build.tagged event
      Add revision for new table columns
      Implement logic for creating and displaying masked variables
      Run develop migrations as part of build
      Passthrough mask parameter
      Fix typo in error message
      Add integration test for variable masking
      Make variable unmasking togglable
      Add sudo mode for privileged actions
      Use sudo mode for variable unmasking and persist unmasked variables
      Build from correct branch
      Redirect back after unmasking using sudo_referer
      Add support for toggling masking build variables
      Fix unmask button styling
      Formatting
      Load user for parent namespace
      Load user for parent namespace
      Copy masked value from original variable
      Use streaming transformation to mask variables in build output
      Update deps
      Merge new validation errors onto end of original errors
      Initialize validation errors before merging
      Flush the transform.Writer upon job completion
      Add comment explaining lack of transformer
      Set build relation on job
      Connect stdout and stderr to job writer instead of driver writer
      Add integration test for masking variables in build output
      Commit transaction before submitting to queue
      Only allow variable author to unmask a masked variable
      Slugify job names
      Remove realval field
      Implement logic for unmasking variblaes in the namespace view
      Left align SVG icon
      Only load parent relations if we have one
      Move revision from dev to schema
      Keep revisions/dev directory even if empty
      Build latest version of mgrt
      Build from v3 branch of mgrt
      Merge branch 'dev.varmask'
      Document masked variables
      Make read/write timeouts configurable
      Pull from main branch
      Use SELECT DISTINCT ON to get the latest namespace builds
      Allow for per-user artifact cleanup threshold
      Change object and artifact size type to BIGINT
      Use the user cleanup limit for artifact curation
      Document image server
      Clean up curator code
      More curator clean up
      Don't keep track of curated users
      Ignore fs.ErrNotExist errors on artifact deletion
      Remove redundant code
      Save unmasked variables to session
      Update example config files
      Set image server host in doc serve script
      Document serving behind NGINX
      Support downloading of images from public namespaces
      Fix API documentation formatting

v1.1.0

Toggle v1.1.0's commit message
v1.1.0

Release notes:

This version adds support for namespace webhooks, image downloading from remote
URLs either via http(s) or sftp, automatic build ref-tagging, and better
handling of orphaned builds from worker restarts. Image storage is now also
partitioned on a per user basis.

Changelog:

Andrew Pillar (183):
      Update tutorial to use QEMU driver
      Correctly parse version information from git
      Lookup queue producer correctly using manifest
      Use a slightly better way of getting version information
      Use sha instead of id from build trigger data
      Add feature request issue template
      Add bug report template
      Update yarn dependencies
      Ignore artifacts collected from offline runner
      Correct .gitignore typo
      Add local development guide to readme
      Render build number on job page
      Properly encode regenerated tokens
      Don't trim the source filepath
      Remove unused imports
      Check for tag values after tag creation
      Check if the correct scope is also set for the build/namespace
      Attempt to redial on RSET failure
      Only close the client on a redial
      Use INTEGRATION_CONFIG to control whether integration tests run
      Use base repo id in pull request hook
      Order curated artifacts by DESC
      Only apply scope constraint on API requests
      Use EncodeToString on oauth app secret
      Delete unused test file
      Remove superfluous reset
      Remove invalid close of client
      Implement support for namespace webhooks
      Remove unused variable
      Use mgrt to setup database
      Document djinn-server environment variables
      Set user passwords and use correct database user
      Use mgrt user for migrations
      Add revision for database users
      Correctly order commands for checking out the git ref
      Include current time in default setup stage
      Implement badge.svg endpoint for latest namespace build
      Use correct ordering for setting the HTTP status
      Implement encryption of webhook secrets
      Automatically tag builds with git ref
      Orphan a build if it has already started
      Begin work on image downloads and webhook queue refactor
      Fix broken test
      Use dev branch in manifest
      Use new queue API for dispatching events from the worker
      Revert ref manifest change
      Implement configuration for the djinn-consumer
      Add -version flag to consumer
      Rename url to source
      Display image download status on image index
      Use constant for QEMU mime type
      Add download URL to image form
      Use correct Unlock call
      Correctly spread slice values
      Set permissions in revision
      go mod tidy
      Fix up consumer bugs
      Handle image downloads from HTTP and SFTP URLs.
      Fix broken HTML
      Create all directories for the filesystem store
      gofmt -s -w
      Create log.Queue for passing to curlyq for logging
      gofmt -s -w
      Grant correct permissions for djinn_consumer and djinn_server
      Display download error on image index
      General clean up of logic, and bug fixes
      Register DownloadJob for gob encoding
      Support partitioning of images on the worker side
      Update deps
      Update dist config
      gofmt -s -w
      Update .gitignore
      Add tests for download URL encoding/decoding
      Display if an image is a download
      Grant necessary permissions to djinn_worker for build orphaning
      Display delete button for images not downloaded
      Log build ID at debug
      Validate download URL
      Gracefully handle server start failures
      Log bind info only when bound to an address
      Support namespace webhook events
      Remove dead code
      Use correct event name
      Return image driver in JSON
      Handle unmarshalling of Schedule type from JSON
      Return ErrRecordNotFound on os.IsNotExist
      Encode event type as an integer instead of binary
      Specify the driver that is invalid
      Clean up make script
      Rename CurlyQ implementation to Redis
      Add JSON struct tags to image download form
      Check for ErrInvalidScheme after form validation
      Document correct Accept header usage for objects and images
      Add JSON struct tags to cron form
      Rename URL to Source on DownloadJob, add Get to DownloadStore
      Consume jobs from the same queue
      Clean up build handler logic and check for ErrDriverDisabled
      Put image downloads on jobs queue and general clean up
      Rewrite integration tests
      Set the build user to the namespace owner
      Add ErrOwner error to denote an invalid namespace owner
      Respond with JSON when Content-Type is for JSON
      Expand invite webhook events
      Remove unnecessary form field
      Handle new invite events
      Include namespace in all invite events
      Use block cipher for webhook store
      Use UUID for webhook event ids
      Check for closed channel
      Only query webhooks that are active
      Clean up
      Remove unneeded base and method check
      Check for non-nil error before returning
      Encode UUID to string
      Add tests for webhooks
      Update go.mod
      Append local.dev to /etc/hosts for webhook tests
      Call UUID.String() instead of hex.EncodeToString
      Store delivery event as integer
      Clean up test SDK
      Check server log for errors
      Expand integration tests
      Use resource owner to partition block storage
      Clean up webhook delivery UI
      Clean up invite event data
      Clean up tag event data
      Rename crypto.Block to crypto.AESGCM
      Support include statements for configuration
      Dispatch event for when an image download completes
      Clear server log on reach run
      Pass database connection to invite event init func
      Set CreatedAt on build creation
      Append created tags to build in tag event
      gofmt -s -w
      Use memory queue for testing image download job
      Load in build relations before execution
      Set CreatedAt on cron creation
      Set resource author
      Simplify webhook secret deletion
      Set the build trigger during creation
      gofmt -s -w
      gofmt -s -w
      Document invites URL
      Set UpdatedAt on key creation
      Document webhook events
      Protect against circular includes
      Expand integration tests
      Add djinn_consumer permissions
      Update example config files
      Document include directive
      Fix up database revisions
      Document consumer configuration and cleanup previous docs
      Only os.Exit on non-zero exit code
      Support downloading of artifacts over REST API
      Document artifact downloading via the API
      Cascade image_download deletions
      Log fatal errors if the implement error interface
      Support MultiDispatcher implementation of event.Dispatcher
      Load build trigger on tag creation for the build.tagged event
      Include repo_id and provider name in hook data
      Clean up
      Add trailing newline to hosts entry
      Only update records for the given download
      Make error message more specific
      Document image downloads via API
      Categorize revisions
      Perform revision categories in manifest
      Document _base directory for images
      Update build manifest and permission revision
      Fix revision typo
      Set djinn_consumer password during setup
      Explicitly set application/x-qemu-disk as the Content-Type
      Collect server.log
      Collect webhook log
      Collect from correct location
      Delete image from user's partition
      Collect djinn-consumer artifact
      Sanitize build and job output in case of binary characters
      Add integration test for binary build output
      Add webhook permissions
      Sanitize null bytes with NUL string
      Combine unmarshal errors with form validation errors
      Use regular expressions in build tag routes

v1.0.0

Toggle v1.0.0's commit message
Prepare initial release of Djinn CI