google-cloud-compute-0.1.0.0: GCP Client for Haskell
Copyright(c) 2025
LicenseMIT
Maintainer
Stabilityexperimental
Safe HaskellSafe-Inferred
LanguageHaskell2010

Google.Cloud.Compute.Firewall

Description

This module provides a Haskell client for Google Cloud Compute Engine Firewall operations.

Synopsis

Documentation

listFirewalls Source #

Arguments

:: String

GCP Project ID

-> Maybe ListFirewallsQuery

Optional query parameters

-> IO (Either String FirewallList)

List result or error

List firewall rules in a project

Example:

listFirewalls "my-project" (Just ListFirewallsQuery { filter0 = Just "name=default-allow-*" })

data FirewallList Source #

Response format for firewall listing operations

Constructors

FirewallList 

Fields

data FirewallMeta Source #

Represents a Google Cloud Firewall Rule

Constructors

FirewallMeta 

Fields

createFirewall Source #

Arguments

:: String

GCP Project ID

-> CreateFirewallOps

Firewall configuration

-> Maybe CreateFirewallQuery

Optional request ID

-> IO (Either String CreateFirewallResp)

Operation or error

Create a new firewall rule

Example:

createFirewall "my-project"
  (defaultCreateFirewallOps "allow-http"
    { allowed = Just [AllowedFirewall "tcp" (Just ["80"])]
    , sourceRanges = Just ["0.0.0.0/0"]
  }) Nothing

data CreateFirewallOps Source #

Firewall creation options

Constructors

CreateFirewallOps 

Fields

type CreateFirewallResp = Operation Source #

Alias for operation response from firewall creation

data Operation Source #

Long-running operation resource

Constructors

Operation 

Fields

data Warning Source #

Represents a warning object in API responses

Constructors

Warning 

Fields

data WarningData Source #

Key-value pair providing additional context for warnings

Constructors

WarningData 

Fields

  • key :: String

    Metadata key describing the warning aspect

  • value :: String

    Metadata value associated with the key

data LogConfig Source #

Firewall rule logging configuration

Constructors

LogConfig 

Fields

defaultCreateFirewallOps :: String -> CreateFirewallOps Source #

Default firewall creation options

Creates minimal valid configuration with required name. Additional fields can be added using record update syntax:

defaultCreateFirewallOps "web-allow" 
  { description = Just "Allow web traffic"
  , allowed = Just [AllowedFirewall "tcp" (Just ["80","443"])]
  }