This was created as part of a lab days project at one of the companies I work/worked for. The general idea was to consume files from the origin bucket in GCS, do some processing and put it back in the destination bucket. It uses the official Google library to access GCS, streaming the files all the way from the bucket and to the bucket as we apply transformations. Files are gziped, so we also have to ungzip them while reading them.
Useful links: