Coder Social home page Coder Social logo

ricardolsmendes / ci-cd-for-data-processing-workflow Goto Github PK

View Code? Open in Web Editor NEW

This project forked from googlecloudplatform/ci-cd-for-data-processing-workflow

0.0 0.0 1.0 174 KB

This repository contains source code based on a guide on how to use Cloud Build and Cloud Composer to create a CI/CD pipeline for building, testing, and deploying a data processing workflow

License: Apache License 2.0

Shell 38.39% Java 24.35% Python 37.26%
ci-cd ci-cd-pipeline cloud-build cloud-composer continuous-delivery continuous-integration dataops gcp google-cloud google-cloud-platform

ci-cd-for-data-processing-workflow's Introduction

Hey there, I am Ricardo Mendes.

With over 20 years of consulting and software engineering experience across multiple industries, I have developed a passion for data and its potential to drive innovation and transformation. I now lead data teams that leverage the latest technologies to boost the delivery of business value, chiefly performing customer-facing roles.

My technical background includes Python, Java, Google Cloud, AWS, and DevOps, as well as Data Governance, Metadata Management, Data Lineage, and emerging fields such as DataOps and MLOps.


You can also reach me at:

ci-cd-for-data-processing-workflow's People

Contributors

kingman avatar ricardolsmendes avatar

ci-cd-for-data-processing-workflow's Issues

GoogleCloudStorageDownloadOperator raises TypeError on Composer

The GoogleCloudStorageDownloadOperator (used by the CompareXComMapsOperator in wordcount_test.py) works with Python 2.7 but raises a TypeError: Object of type 'bytes' is not JSON serializable when running in Python 3.6.

The error is easily reproducible in the below Cloud Composer Environment:

  1. Composer version: 1.16.8
  2. Airflow version: 1.10.15
  3. Python version: 3.6

Error details:

Traceback (most recent call last)
  File "/usr/local/lib/airflow/airflow/models/taskinstance.py", line 985, in _run_raw_tas
    result = task_copy.execute(context=context
  File "/usr/local/lib/airflow/airflow/contrib/operators/gcs_download_operator.py", line 96, in execut
    context['ti'].xcom_push(key=self.store_to_xcom_key, value=file_bytes
  File "/usr/local/lib/airflow/airflow/models/taskinstance.py", line 1516, in xcom_pus
    execution_date=execution_date or self.execution_date
  File "/usr/local/lib/airflow/airflow/utils/db.py", line 74, in wrappe
    return func(*args, **kwargs
  File "/usr/local/lib/airflow/airflow/models/xcom.py", line 101, in se
    value = XCom.serialize_value(value
  File "/usr/local/lib/airflow/airflow/models/xcom.py", line 224, in serialize_valu
    return json.dumps(value).encode('UTF-8'
  File "/opt/python3.6/lib/python3.6/json/__init__.py", line 231, in dump
    return _default_encoder.encode(obj
  File "/opt/python3.6/lib/python3.6/json/encoder.py", line 199, in encod
    chunks = self.iterencode(o, _one_shot=True
  File "/opt/python3.6/lib/python3.6/json/encoder.py", line 257, in iterencod
    return _iterencode(o, 0
  File "/opt/python3.6/lib/python3.6/json/encoder.py", line 180, in defaul
    o.__class__.__name__
TypeError: Object of type 'bytes' is not JSON serializabl

GoogleCloudStorageDownloadOperator is deprecated and probably needs to be replaced in order to fix the test workflow.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.