public function push() {
		if ( $this->remote ) {
			Log::instance()->write( 'Snapshot already pushed.', 0, 'error' );
			return false;
		}

		$repository = RepositoryManager::instance()->setup( $this->repository_name );

		if ( ! $repository ) {
			Log::instance()->write( 'Could not setup repository.', 0, 'error' );

			return false;
		}

		/**
		 * Put files to S3
		 */
		Log::instance()->write( 'Uploading files (' . Utils\format_bytes( $this->meta['size'] ) . ')...' );

		$s3_add = $repository->getS3()->putSnapshot( $this->id, $this->meta['project'], Utils\get_snapshot_directory() . $this->id . '/data.sql.gz', Utils\get_snapshot_directory() . $this->id . '/files.tar.gz' );

		if ( ! $s3_add ) {
			Log::instance()->write( 'Could not upload files to S3.', 0, 'error' );

			return false;
		}

		/**
		 * Add snapshot to DB
		 */
		Log::instance()->write( 'Adding snapshot to database...' );

		$inserted_snapshot = $repository->getDB()->insertSnapshot( $this->id, $this->meta );

		if ( ! $inserted_snapshot ) {
			Log::instance()->write( 'Could not add snapshot to database.', 0, 'error' );

			return false;
		}

		$this->remote = true;

		return true;
	}
public function push() {
		if ( $this->remote ) {
			Log::instance()->write( 'Snapshot already pushed.', 0, 'error' );
			return false;
		}

		$repository = RepositoryManager::instance()->setup( $this->repository_name );

		if ( ! $repository ) {
			Log::instance()->write( 'Could not setup repository.', 0, 'error' );

			return false;
		}

		/**
		 * Put files to S3
		 */
		Log::instance()->write( 'Uploading files (' . Utils\format_bytes( $this->meta['size'] ) . ')...' );

		$s3_add = $repository->getS3()->putSnapshot( $this->id, $this->meta['project'], Utils\get_snapshot_directory() . $this->id . '/data.sql.gz', Utils\get_snapshot_directory() . $this->id . '/files.tar.gz' );

		if ( ! $s3_add ) {
			Log::instance()->write( 'Could not upload files to S3.', 0, 'error' );

			return false;
		}

		/**
		 * Add snapshot to DB
		 */
		Log::instance()->write( 'Adding snapshot to database...' );

		$inserted_snapshot = $repository->getDB()->insertSnapshot( $this->id, $this->meta );

		if ( ! $inserted_snapshot ) {
			Log::instance()->write( 'Could not add snapshot to database.', 0, 'error' );

			return false;
		}

		$this->remote = true;

		return true;
	}
public function push ( ) { if ( $ this -> remote ) { Log :: instance ( ) -> write ( 'Snapshot already pushed.' , 0 , 'error' ) ; return false ; } $ repository = RepositoryManager :: instance ( ) -> setup ( $ this -> repository_name ) ; if ( ! $ repository ) { Log :: instance ( ) -> write ( 'Could not setup repository.' , 0 , 'error' ) ; return false ; } /**
		 * Put files to S3
		 */ Log :: instance ( ) -> write ( 'Uploading files (' . Utils \ format_bytes ( $ this -> meta [ 'size' ] ) . ')...' ) ; $ s3_add = $ repository -> getS3 ( ) -> putSnapshot ( $ this -> id , $ this -> meta [ 'project' ] , Utils \ get_snapshot_directory ( ) . $ this -> id . '/data.sql.gz' , Utils \ get_snapshot_directory ( ) . $ this -> id . '/files.tar.gz' ) ; if ( ! $ s3_add ) { Log :: instance ( ) -> write ( 'Could not upload files to S3.' , 0 , 'error' ) ; return false ; } /**
		 * Add snapshot to DB
		 */ Log :: instance ( ) -> write ( 'Adding snapshot to database...' ) ; $ inserted_snapshot = $ repository -> getDB ( ) -> insertSnapshot ( $ this -> id , $ this -> meta ) ; if ( ! $ inserted_snapshot ) { Log :: instance ( ) -> write ( 'Could not add snapshot to database.' , 0 , 'error' ) ; return false ; } $ this -> remote = true ; return true ; }
Push snapshot to repository

@return boolean
Push snapshot to repository