lib/plugins/aws/rollback/index.js/AwsRollback/setStackToUpdate
class AwsRollback:  setStackToUpdate() {
    const service = this.serverless.service;
    const serviceName = this.serverless.service.service;
    const stage = this.provider.getStage();
    const prefix = `serverless/${serviceName}/${stage}`;

    return this.provider.request('S3',
      'listObjectsV2',
      {
        Bucket: this.bucketName,
        Prefix: prefix,
      })
      .then((response) => {
        const deployments = findAndGroupDeployments(response, serviceName, stage);

        if (deployments.length === 0) {
          const msg = 'Couldn\'t find any existing deployments.';
          const hint = 'Please verify that stage and region are correct.';
          return BbPromise.reject(`${msg} ${hint}`);
        }

        const date = new Date(this.options.timestamp);
        const dateString = `${date.getTime().toString()}-${date.toISOString()}`;
        const exists = _.some(deployments, (deployment) => (
          _.some(deployment, {
            directory: dateString,
            file: 'compiled-cloudformation-template.json',
          })
        ));

        if (!exists) {
          const msg = `Couldn't find a deployment for the timestamp: ${this.options.timestamp}.`;
          const hint = 'Please verify that the timestamp, stage and region are correct.';
          return BbPromise.reject(`${msg} ${hint}`);
        }

        service.package.artifactDirectoryName = `${prefix}/${dateString}`;
        return BbPromise.resolve();
      });
  }